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

Smorodov

Главные администраторы
  • Количество публикаций

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

  • Посещение

  • Days Won

    346

Сообщения, опубликованные пользователем Smorodov


  1. Можно и не выравнивать, а просто швы блендингом замазать. Делаете маску с элементами 0 для первого изображения, 1 для второго, размываете, и получаете результат как  res=mask.mul(I_1)+(1-mask).mul(I_2). Нужно делать поканально, все матрицы преобразовать к CV_32FC1. 

    Получим плавный переход в месте стыка.


  2. Ну так можно же фотографию 24 MP уменьшить до 0.3 MP и собрать ту же статистику намного быстрее.

    Ну или собирать данные с заданным шагом, а не каждый пиксель, а в одной  из программ я просто 100000 точек  со случайными координатами собирал и по ним кластеры считал.


  3. В примерах SDK есть пример захвата видео или получения кадра с камеры ? 

    Если есть, то создайте cv::Mat и заполните его данные данными полученными с камеры при помощи SDK.

    Это будет полезно: http://docs.opencv.org/2.4/doc/tutorials/core/how_to_scan_images/how_to_scan_images.html

     


  4. Это может быть, может быть на AF можно реализовать быстрый решатель, но изначально, как я понял, AF не математическая библиотека, а скорее подобие stl, и математический функционал на ней нужно реализовывать руками. Тот пример, который я брал, он сильно напрямую реализован, безо всяких стабилизаций, ускорений, учета структуры матрицы, поэтому и работает медленно и неточно.


  5. import cv2 oprncv-шная либа
    import numpy as np  //что за numpy? библиотека работы с матрицами, в питоне нет cv::Mat, там их заменяют матрицы numpy.
    from matplotlib import pyplot as pl    библиотека для отрисовки графиков и изображений.

    Это питоновские "#include" для С++ хватит и "#include opencv2/opencv.hpp" остальное в питоне и в C++ вариантах очень похоже.


  6. Значит так, ArrayFire, довольно стремная штука, и решает очень медленно, сильно медленнее чем Eigen. Скорее всего это связано с тем, что пример решателя, который я взял самый наипростейший. И еще, в документации и примерах везде инициализация рандомом. Как затолкать и вытащить в массив/из массива то что мне надо я ковырялся целый день. 

    В результате нашел решатель в MKL, пол дня разбирательств с blas-подобными командами, и готово.

    Решает намного быстрее и стабильнее чем Eigen, примерно как MATLAB.

    Пример работы с этой штукой у меня на диске лежит здесь:

    c:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.2.187\windows\mkl\examples\examples_core_c.zip\solverc\source\dss_sym_c.c

    DSS, насколько я понял это надстройка над PARDISO намного более гибкой штукой, но параметров там сильно больше нужно задавать. 

     


  7. Нелинейный Кальман, это фильтр частиц. А вообще с птицами случай сложный. Если одна птица влетела в дерево, а другая вылетела, или две ? Может тут и не нужно держать трек ? Разпознавалку птиц можно сделать по скорости изменения конфигурации объекта, то есть птица машет крыльями меняется ее силуэт, меняется он довольно часто (зависит от вида птицы конечно), можно фиксировать флюктуации яркости объекта (изменение гистограммы яркостей во времени) .


  8. Отправляю: http://docs.opencv.org/2.4/doc/tutorials/core/how_to_scan_images/how_to_scan_images.html

    У ас MathTemplate выдаст изображение с типом элементов float если мне не изменяет склероз.

    http://docs.opencv.org/trunk/d4/dc6/tutorial_py_template_matching.html см. картинки слева. И снизу, кстати есть пример поиска монеток на экране (на питоне, но смысл тот-же). 

    Просканировали его и выбрали максимумы.


  9. Понадобился решатель  разреженных СЛАУ. Попробовал Eigen (сопряженный градиент) и MATLAB, сравнил по скорости...  

    МАТЛАБ быстрее в 6 раз.  Кто нибудь видел быструю либу для таких целей, нормально собирающуюся под виндой? 

    Рыл сеть, нарыл неплохой список:

    http://www.netlib.org/utk/people/JackDongarra/la-sw.html

    Но все что пробовал (elemental, MUMPS,PaStiX) требует много танцев.

    Есть еще cuSparse, но хотелось бы CPU-шный вариант.


  10. Ну так камера-то (как и человеческий глаз кстати) видит не в пикселях и не в метрах, а в угловых единицах. Есть угол зрения камеры по вертикали и по горизонтали, если смещаетесь на какое то расстояние от оптической оси камеры, то можно найти угол, он будет пропорционален расстоянию от центра изображения. Точное значение можно посчитать если учесть угол обзора, естественно, это верно если камера откалибрована.

    • Like 1

  11. Наткнулся на картунизатор, как думаете какие тут преобразования? Для нейронки слишком четко, для детектора граней слишком аккуратно, борода и волосы преобразованы грамотно. 

    Сайт: http://itoon.net/#onlinedemo

     

    upload-hqpnsuijfh59u4vi7su8g31s87472960final.jpg

     

    Исходное:

    images.jpg

    Результат:

    upload-hqpnsuijfh59u4vi7su8g31s87891422final.jpg

×