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

Поиск по сайту

Showing results for tags 'opencv'.



More search options

  • Search By Tags

    Введите теги через запятую.
  • Search By Author

Тип содержимого


Категории и разделы

  • Пакет OpenCV
    • OpenCV
    • Новости
    • Вопросы взаимодействия OpenCV + GDI, GDI+
  • Дополненная реальность (ARToolkit и др.)
    • ARToolkit
  • Нейросети
    • Вопросы по нейросетям и ИИ
  • Общие вопросы
    • Обсуждение общих вопросов
  • Другое

Найдено 93 результата

  1. Добрый день, ищу исполнителя на мобильное приложение ios/android c Основными функциями:- буферизация видео (по команде идет сохрание нужного куска видео)- online определение скорости движущихся объектов на видео которое снимает в данный момент камера телефон- распознавание номеров этих объектов прошу писать tasheal@gmail.com кто готов реализовать Спасибо! Андрей
  2. Добрый день господа! Помогите плиз. Дело в том что в стандартной библиотеке для ip камеры есть функция которая получает изображение в формате char** вот эта функция: GetVideo(handle, (char**)&Frame, &Len,fmt,&Speed); Мне необходимо сконвертировать изображение в cv::Mat, сделать обработку, и затем сконвертировать обратно в char**. Как это правильно сделать? Пробую вот так: cameraFrame = cv::Mat(h, w, CV_8UC1, *Frame->data); Но при выводе imshow("namewindow",cameraFrame); выводиться черный квадрат..
  3. Плывет изображение

    Всем доброго времени суток! Столкнулся с проблемой. Тестирую код из книги Mastering OpenCV глава 8. И не пойму по какой причине видео с вебкамеры начинает тормозить (задержка примерно 3 сек) и искажаться через определенное время (10-30 сек) после запуска режима распознавания лица. То есть в режимах когда идет сбор лиц или просто режим определения, картинка не тормозит и не искажается, но как только включаю режим распознавания лица начинаются проблемы (файл прикрепил). 1) Пробовал запихать цикл распознавания в таймер. не помогло. 2) Пробовал запускать в отдельном потоке (выставлял разные Sleep(1-30)). не помогло. 3) Пробовал выводить изображение как через функцию imshow, так и на форму (MFC C++), тоже не дало результатов. 4) Утечка памяти замечена не была. Если кто-нибудь сталкивался с подобной проблемой, подскажите плиз как ее решить?
  4. Всем доброго времени суток! Уважаемые господа форумчане, нужен ваш совет каким путем пойти чтобы не потратить даром времени и не наломать дров. Адаптирую программу для распознавания лиц из книги Mastering OpenCV глава 8 под свои нужды. Хочу чтобы появилась возможность сохранять модель распознавания лиц, и в любой момент после перезапуска программы в нее можно было добавить новые лица, метки или удалить старые. На данный момент нашел способ который сохраняет модель в файл и загружает ее из файла, но в моем случае это не подходит, так как если после перезапуска программы я вновь начну обучать модель, а затем сохранять ее в ранее созданный файл, все старые данные удаляться и запишеться только текущая тренированная модель: Ptr<FaceRecognizer> model = createEigenFaceRecognizer(); model->train(array of images,array of lables); model->save("C:\\eigendataset.yml"); model->load("C:\\eigendataset.yml"); Прошу посоветовать оптимальный способ для добавления или удаления лиц из файла eigendataset.yml Или может существует более правильный способ для онлайн тренировки модели с последующем сохранением, изменением и загрузкой? Заранее благодарю за советы.
  5. Mastering opencv глава 8

    Всем доброго дня! Кто нибудь может помочь запустить пример из главы 8 по книге, которая описывается в начале ветки https://github.com/MasteringOpenCV/code Дело в том что я использую VS2010 + OpenCV 3.1, а исходники данного примера используют более старую версию библиотеки OpenCv 2.4.1. Спустя несколько часов, всеже удалось запустить слегка модифицированный код из книги под версией библиотеки opencv 3.1, но столкнулся с проблемой. В новой версии библиотеки такие функции как model->get<Mat>("mean"); были заменены на model->getMean(). И если раньше функцию можно было вызвать из FaceRecognizer, то теперь ее можно вызвать только из BasicFaceRecognizer. Соответственно, я изменил все функции в коде из примера по книге, таким образом что вместо FaceRecognizer теперь используется BasicFaceRecognizer. Проект запускается без проблем, ошибок никаких не выдает, но функция распознавания не работает. То есть лица не определяются. Если запускаю проект с версией библиотеки 2.4.11 все работает нормально. Покопавшись с проблемой в debug режиме я понял что под версией библиотеки 3.1 ряд функций просто не выполняются и выдают пустые значения. Прошу помочь разобраться, и если ктонибудь поделиться работающим проектом из книги собранным под VS2010 opencv 3.1 буду очень признателен. Спасибо.
  6. Различие между OpenCV 2.4.11 и OpenCV 2.4.3

    1. В чем разница между OpenCV 2.4.11 и OpenCV 2.4.3. Где бы найти перечень и описание стандартных функций OpenCV 2.4.11. 2. В чем принципиальная разница между Visual C++ 2010 и Visual C++ 2013.
  7. Вышла OpenCV 3.1

    Обновилась OpenCV до версии 3.1 http://opencv.org/opencv-3-1.html Changes The detailed list of changes since 3.0 can be found at https://github.com/Itseez/opencv/wiki/ChangeLog. Here is the short summary: A lot of new functionality has been introduced during Google Summer of Code 2015: “Omnidirectional Cameras Calibration and Stereo 3D Reconstruction” – opencv_contrib/ccalib module (Baisheng Lai, Bo Li) “Structure From Motion” – opencv_contrib/sfm module (Edgar Riba, Vincent Rabaud) “Improved Deformable Part-based Models” – opencv_contrib/dpm module (Jiaolong Xu, Bence Magyar) “Real-time Multi-object Tracking using Kernelized Correlation Filter” – opencv_contrib/tracking module (Laksono Kurnianggoro, Fernando J. Iglesias Garcia) “Improved and expanded Scene Text Detection” – opencv_contrib/text module (Lluis Gomez, Vadim Pisarevsky) “Stereo correspondence improvements” – opencv_contrib/stereo module (Mircea Paul Muresan, Sergei Nosov) “Structured-Light System Calibration” – opencv_contrib/structured_light (Roberta Ravanelli, Delia Passalacqua, Stefano Fabri, Claudia Rapuano) “Chessboard+ArUco for camera calibration” – opencv_contrib/aruco (Sergio Garrido, Prasanna, Gary Bradski) “Implementation of universal interface for deep neural network frameworks” – opencv_contrib/dnn module (Vitaliy Lyudvichenko, Anatoly Baksheev) “Recent advances in edge-aware filtering, improved SGBM stereo algorithm” – opencv/calib3d and opencv_contrib/ximgproc (Alexander Bokov, Maksim Shabunin) “Improved ICF detector, waldboost implementation” – opencv_contrib/xobjdetect (Vlad Shakhuro, Alexander Bovyrin) “Multi-target TLD tracking” – opencv_contrib/tracking module (Vladimir Tyan, Antonella Cascitelli) “3D pose estimation using CNNs” – opencv_contrib/cnn_3dobj (Yida Wang, Manuele Tamburrano, Stefano Fabri) Many great contributions made by the community, such as: Support for HDF5 format New/Improved optical flow algorithms Multiple new image processing algorithms for filtering, segmentation and feature detection Superpixel segmentation and much more IPPICV is now based on IPP 9.0.1, which should make OpenCV even faster on modern Intel chips opencv_contrib modules can now be included into the opencv2.framework for iOS Newest operating systems are supported: Windows 10 and OSX 10.11 (Visual Studio 2015 and XCode 7.1.1) Interoperability between T-API and OpenCL, OpenGL, DirectX and Video Acceleration API on Linux, as well as Android 5 camera. HAL (Hardware Acceleration Layer) module functionality has been moved into corresponding basic modules; the HAL replacement mechanism has been implemented along with the examples
  8. Парковочная система

    Добрый день, появилась задача связанная с парковочной системой, а именно определению количества занятых и свободных парковочных мест, ничего нового впринципе. Необходимо решить проблему связанную с изменением освещенности, отражениями от поверхностей, бликами. Первоначально использовал простые методы по детектированию авто такие, как вычитания изображения из базового статического кадра и последующие бинарные, морфологические и т.д. преобразования на простых тестовых видеозаписях (статичное освещение, нет бликов, нет отражений) это давало неплохие результаты. На сложных или более естественных видеозаписях, где происходит смена освещения и т.д это не работает. Стал смотреть в сторону адаптивных моделей фона, в частности BackgroundSubtractorMOG2, проблемы с фоном решились, но появились новые. Например переход объектов переднего плана к модели фону, в связи с чем невозможность детектирования малоподвижных или статических в определенный момент времени объектов. Так вот если кто то сталкивался с такими проблемами и успешно решал не могли бы вы подсказать пути их решения?
  9. Всем привет. Дошли тут у меня руки наконец плотно заняться Deep Learning. Для тестов выбрал фреймворк caffe, как один из самых популярных и просто интегрирующихся с opencv. И тут сразу возникла непонятная проблема: выбрал я топологию сети (нечто похожее на LeNet), составил обучающую/тренировочную выборки(выборка тренировочная правда не сбалансирована, но вряд ли это является причиной наблдаемого поведения) и начал тренировать методом стохастического градиентного спуска. Первое подозрительное поведение: сетка буквально за 100-1000 итераций скатывается в некое состояние равновесия с не слишком высоким detection rate и сидит в нем до конца обучения (даже после >1000000 итераций картина особо не меняется). Ну ок, решил что у меня офигенная архитектура сети и все так быстро учится...заинтегрировал это в opencv приложение и тут вылезло второе подозрительное поведение: на любые входные данные сеть генерирует один и тотже отклик...если брать сетки с разных эпох, то картина меняется численно но качественно всегда наблюдаю одно и тоже поведение. Кто-то сталкивался с подобными проблемами и возможно знает в чем может быть причина? Заранее спасибо.
  10. Windows Opencv 2.4.11 Создал в Qt Creator простейший проект: #include "mainwindow.h" #include <QApplication> #include <QtGui> #include <QTest> #include "opencv2/opencv.hpp" #include <opencv2/highgui/highgui.hpp> #include <stdlib.h> #include <stdio.h> #include <iostream> using namespace cv; using namespace std; VideoCapture *m_video; double m_dWidth; double m_dHeight; Mat GetVideoFrame() { Mat frame; if (!m_video->isOpened()) { std::cout << "Stream cannot be opened" << std::endl; } m_video->read(frame); //get one frame form video if (frame.empty()) { std::cout << "Error reading video frame" << endl; } return frame; } int main(int argc, char *argv[]) { Mat frame; m_video = new VideoCapture(); m_video->open("C://2222.mp4"); // open the video namedWindow("TestCamera",CV_WINDOW_AUTOSIZE); //create a window StartVideo(); while (1) { frame = GetVideoFrame(); imshow("TestCamera", frame); //show the frame //QTest::qSleep(1); QTest::qWait(1); //cvWaitKey(); } cvWaitKey(); return 0; } Видео по сравнению с оригиналом проигрывается с замедлением. Пробовал реализовывать задержки между кадрами разными средствами, но ничего не помогло. В чём может быть причина замедленного воспроизведения?
  11. Как очистить матрицу Mat

    Есть переменная frame типа Mat Mat frame; Я с ней работаю. И потом ее нужно обнулить так чтобы при вызове if(frame.empty()) данное условие возвращало истину. Как это сделать? С заранее спасибо.
  12. Добрый день, форумчане. Была уже похожая тема, но на этот раз все ушло дальше, а чем дальше, тем интереснее. Имеем сравнивание 2х изображений средствами ASIFT, 300 изображений, гору энтузиазма и ТЗ. =) Требуется скомпоновать все изображения относящиеся к одному зданию по папкам. А теперь собственно то, с чем хочу к вам обратиться: можно сравнивать каждое изображение с каждый(тупо брутфорсом), да, метод действенный, но чем больше изображений, тем больше временные затраты на их матчинг( после 10 изображений на каждое уходит по 2 сек, ближе к 60 уже по минуте, а у нас их 300), я слышал про такую штуку как kd tree, но в упор не понимаю как ее припилить к моему модулю. Может ли кто то дать пример с этой штукой/дать пример конкретно к моей задаче(омг как же я буду благодарен)/подсказать другие варианты сравнения изображений(напомню что используем ASIFT). На 300 изображений уходит слишком много времени на данный момент.
  13. OpenCV 3.0!

    Долгожданный релиз! Просто скопирую сюда часть новости:
  14. отслеживание объекта

    Здравствуйте! Тема такая - по конвейеру идут объекты, их надо посчитать, я обучил каскадный классификатор (процентов 90 он определяет - иногда проскакивают кадры где не определяется , но в целом каждый объект определен), вытащил координаты найденных объектов, пытаюсь сделать счетчик по расстоянию до условной линии. Но натыкаюсь на то, что он считает объекты по количеству кадров т.е был объект 5 сек в кадрах со скоростью 5к\сек получили 25 объектов. Еще сложнее если вдруг появляется два объекта. Попытался сделать с ROI - вырезал небольшой участок и на нем уже получил очень близкие к достоверным результаты. Но понимаю что это неправильно. Помогите как отслеживать именно найденный объект (видел ролики где над объектом пририсовывалась цифра и не менялась по всему треку слежения) и сравнивать расстояние до линии. Возможно ли реализовать чтоб в центре объекта ставилась точка и слежение происходило за ней?, Я пробовал, но к 10 кадру у меня 8-10 таких точек в центре объекта. и не смог реализовать удаление не всех точек на экране а тех которые вышли из заданной области у меня через пару минут в верхней области экрана пару сотен таких точек. Извините за "многобукаф".
  15. Доброго времени суток! Пишу детектор знаков ограничения скорости(в компьютерном зрении новичек), реализация фильтра и поиска координат уже есть(детектирование красного кольца работает приемлемо), теперь осталось распознать текст внутри знаков (5,10,20,30,40... и т.д.), моя идея такова: создать по 300 положительных и по 600 отрицательных изображений для каждого знака(а конкретнее текста внутри знака, так как поиск изображения с текстом думаю делать в уже вырезанном изображении, согласно координатам и данным, полученных из предыдущих действий), с помощью программы: opencv_createsamples.exe и opencv_haartraining.exe - создать XML-файл "cascade.xml" для каждого знака(точнее для тех выборок 300х600 фотографий). После чего загрузить их в программу и выполнять поиск знаков по очереди подставляя каскады разных знаков, например как-то так: подставляем каскад знака 90 если в кадре находим 90 то выход, иначе подставляем каскад знака 80... и так в цикле. Каскад собираюсь делать согласно этой статье. Одна из положительных картинок 208.bmp (и да, я знаю что она большая,но пока не знаю какой размер конкретно нужен) Собственно вопрос: 1) подходит ли мой алгоритм? 2) если нет, как это лучше сделать? Предпочтительно: C# ,OpenCvSharp Библиотека: OpenCv СпаСиБо!
  16. Выделение по цвету кожи

    Попытаюсь структурировать всю свою кашу в голове: По совету дипломного руководителя изображение переводится в CIELAB формат, но везде почему-то используют HSV, кто прав? И в чем преимущества Lab'a перед HSV? Как я понял существуют несколько способов распознавания по цвету кожи: 2.1 Ранжирование диапазона значений каждого канала. Я использую следующий код: cvtColor(vFrame, vFrameLab, cv::COLOR_BGR2Lab); inRange(vFrameLab, Scalar(mLmin, mAmin, mBmin), Scalar(mLmax, mAmax, mBmax), vFrameLab); imshow("LAB", vFrameLab); 2.2 Выделение мышкой участков кожи и поиск таких участков на изображении. Цитата из данной статьи: 2.3 Модификация метода (дипломный руководитель называет это калибровкой), суть: 10-20 секунд камера снимает руку при этом вычитая задний фон и запоминает яркость руки. После этого она должна по идеи распознавать только цвет кожи. Появились проблемы на пункте 2.1 ранжирование диапазонов каналов. 3.1. Сильно зависит от освещенности, при дневном свете нужны одни параметры, например: mLmin = 60; mLmax = 155; mAmin = 120; mAmax = 143; mBmin = 139; mBmax = 161; А при искусственном освещении другие. 3.2. объекты похожие на цвет кожи: дверь, мебель и т.д. цепляются и в итоге становится каша на изобажении. Конечный результат который надо получить: У всех ли так работает метод 2.1? Цепляя другие объекты типо дверей и мебели? Подскажите как быть?
  17. Суть проблемы: JavaCameraView неправильно реагирует на ориентацию телефона в 3 из 4 случаях. Правильная ориентация только в альбомном виде когда кнопка home справа. Скринсшоты с пояснениями под спойлером: Код из примера Sample - Face detection, без всяких изменений имеет такое поведение. Версия opencv 2.4.9. В багтрекере и в changelog не нашёл упоминания о проблеме. Полная печаль, уже месяца 3 периодически гуглю, но безуспешно. Как с этим справиться?
  18. USB3Vision+Genicam+OpenCV

    Здравствуйте форумчане! Планирую применить в своей разработке промышленные видеокамеры (JAI GO или BASLER асе) с интерфейсами USB3Vision со стандартом передачи данных GenIcam (см.вложенный PDF файл). Для данных видеокамер производитель предусматривает собственные SDK, так в инструкции для SDK JAI написано: The JAI SDK consists of two APIs (Application Programming Interfaces): 1. Jai_Factory.dll: Windows DLL with “Plain” C-interface and C/C++ header file with all functions and parameter types defined. This makes it possible to use JAI SDK in almost any programming language available for the Windows platform. 2. Jai_FactoryDotNET.dll: Managed Windows DLL (.NET Framework 2.0). This DLL exposes the “Plain” function interface PLUS an “object-oriented” API. The object-oriented API encapsulates the “standard use” of the “plain” C-interface API. Далее там-же описаны примеры интеграции в проекты, написанные на Microsoft Visual Studio 2005 C/C++, С# и т.п. (см.вложенный PDF файл). В проекте своем планирую применить библиотеку OpenCV, так как имею опыт работы с ней и данная библиотека меня всем устраивает. До этого с данной библиотекой создавал приложения, работающие со стандартными вебкамерами по интерфейсу USB2.0. Там все понятно. В данном случае же прошу консультации есть ли возможность подружить видеокамеры, описанные мною выше с OpenCV (связка USB3Vision+Genicam+OpenCV). Есть ли успешно реализованные проекты на основе OpenCV и USB3Vision+GenIcam? Какие возможны подводные камни при получении изображения в OpenCV с таких камер. P.S. Не хотелось бы ошибиться и купить камеру, которую невозможно потом будет привязать к OpenCV, т.к.данные камеры не дешевые. Заранее благодарен за внимание к теме! JAI-SDK-Getting-Started-Guide_revK.pdf genicam_basler.pdf
×