Jump to content
Compvision.ru

And36

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

    4
  • Joined

  • Last visited

Community Reputation

0 Новичек

About And36

  • Rank
    Новичок
  1. Привет всем умным людям! Пришло время и добрался до измерителя пульса с веб-камеры. Как и раньше прогнал на Матлабе = все ок. Перевожу на VS+OpenCV. Прошу помощи по 2-м вопросам: 1. Что посмотреть/почитать по C++ такого, чтобы чуть легче стало переводить Матлабовские алгоритмы в VS+OpenCV. 2. Пока не могу понять почему получаю разные результаты в коде: for( int n=0; n<ires->height; n++ ) { uchar* ptr = (uchar*) ( ires->imageData) + n * ires->widthStep; cvInRangeS(rim, cvScalar(n*8), cvScalar(n*8+8), hv); // creating mask for Rim pixels cvMul(gim, hv, mres, 0.00390625); // implementing Rim-mask for Gim pixels 0.00390625 (нормировка=1/256) for( int m=0; m<ires->width; m++ ) { cvInRangeS(mres, cvScalar(m*8), cvScalar(m*8+8), mv); // creating mask for Gim pixels // ptr[m] = cv::sum(cv::Mat(mv)).val[0]; // sum of sorted pixels ptr[m] = cvCountNonZero(mv); } } Имея 2 изображения rim и gim, хотелось бы получить третье ires, которое является распределением амплитуд по диапазонам: в цикле выделяю узкий диапазон амплитуд в первом (rim), делаю для выделенных значений маску (mres), которую применяю ко второму(gim). В получившемся втором (gim) аналогично выделяю узкий диапазон пикселей и хочу подсчитать их количество для каждого комплексного диапазона. В случае sum вроде близко к нужному результату, но все-равно не так, как в Матлабе получается, а в случае CountNonZero вообще какая-то лажа = почти все смещено в один узкий диапазон (никакого распределения). Может кто подскажет, почему CountNonZero как-то странно считает кол-во ненулевых пикселей для каждого заданного диапазона? CountNonZero.bmp Sum.bmp
  2. Вышла OpenCV 3.1

    Версия OpenCV 3.1 нормально устанавливается с любой версией VS? Express Edition?
  3. ISKEES, спасибо большое, проверю вариант с С# и доложу об успехах)))
  4. Спасибо ISKEES и FOTOMER за идеи. Если,можно,то в двух словах: 1.Чем для слабых игроков лучше java или C# с точки зрения минимальных затрат времени разработчика для реализации алгоритмов обработки видео в реальном масштабе времени? Встречал некоторые ресурсы,где пишут, что java на порядок медленнее работает в рамках указанной задачи. 2. Какие преимущества мне даст переустановка VS и OpenCV,по сравнению с тем что уже стоит? Не в форме у меня все пока работает, а в форме не хочет завершать программу,но видео захватывает вроде нормально. VS13 или 15 и OpenCV 3.1 позволят легче решить мою задачу? (не очень понимаю, что значит managed C++,что бывает разный?,управляемый и неуправляемый?)
  5. Уважаемые форумчане, прошу понять и простить за слабую компетенцию в VS10+OpenCV231 в частности и в программировании С++ в целом. Есть рабочий алгоритм обработки видео в реальном масштабе времени построенный в Матлабе. Хочу реализовать его с помощью С++. Исходя из тех рекомендаций, которые нашел в интернете, остановился на VS10+OpenCV231 (Win7x64). Хочу получить exe-файл, который открывает форму в которой 1 кнопка "старт" запускает захват видео с веб-камеры и реализует алгоритм обработки видео. Долгим и тернистым был путь выбора версий VS+OpenCV, т.к. оказалось, что OpenCV231 нормально стыкуется только с VS10 или 9 (а узнаешь об этом только после долгих инсинуаций по установке)))) Все-таки мне удалось связать все и прописать все пути для библиотек. Нашел подходящие примеры и запустил свое первое приложение (через пустой проект) - к счастью оно заработало. Видео открывается в отдельном окне, окно можно свернуть и переместить, и при нажатии esc все закрывается нормально. Но при попытке вывести видео на форму, т.е. чтобы при запуске программы выводилось только одно окно с кнопкой "старт" и при ее нажатии в том же окне открывалось видео, возникла одна проблема - форма открывается и пока не нажата кнопка "старт" форму можно перемещать, сворачивать и двигать, как только нажимаю "старт" нормально выводится видео в этой форме, но форма "застывает" на месте и больше с ней ничего нельзя сделать, ни на какие команды не реагирует, комп не висит, все остальное работает нормально, форму можно закрыть только из VS нажав на "стоп" отладки. Основной код ниже. буду бесконечно признателен за любую помощь может нужно как-то изменить версию Framework? игра с параметрами cvWaitKey не помогла - никакой реакции формы из всего списка ошибок подозрительным выглядит только это ... "WCWF.exe": Загружено: "C:\Windows\SysWOW64\odbc32.dll", Невозможно найти или открыть файл PDB "WCWF.exe": Загружено: "C:\Windows\SysWOW64\odbcint.dll", Двоичный код не был построен с отладочной информацией. Поток 'Поток Win32' (0x50c) завершился с кодом 0 (0x0). "WCWF.exe": Загружено: "C:\Windows\SysWOW64\qedit.dll", Невозможно найти или открыть файл PDB ...
×