да, по ошибке тут повписывал точки с запятой, в коде их не было. Ошибка появляется при попытке вызвать класс D из любого другого класса в .hpp файле.
Ошибка: multiple definition of D::D
Что странное и для меня не понятное. Если я создаю объект не внутри класса, а в какой-либо функции в .срр файлах, и использую #include "d.hpp" в этом же файле то всё работает ок.
тут лучше проверить как лучше в твоём случае. либо это будет
cvtColor(src, bwsrc, CV_RGB2GRAY);
и работаешь на чёрно-белых изображениях, либо считаешь отдельные три корреляции для трёх каналлов и потом смотришь среднее значение.
Где в числителе у нас умножение сумм разности каждого пиксела и среднего значения всех пикселей для двух сравнимых изображений( х-ы это первое изображение, у-ки это второе изображение. )
В знаменателе у нас cреднеквадратическое отклонение для изображений
Спасибо за ответ. подправил вопрос, потому что действительно можно было не до конца его понять. Линий будет много, и мы исчем те которые создадут фигуру похожую на квадрат.
Я пробовал читать эту статью в самом начале рассмотрения алгоритма. Может я что-то упустил, но я не нашёл момента где описываюется сама детекция и как мы проверяем, принадлежит ли конечное изображение данному классу.
спасибо за ответ. Через SURF я уже проходил, но скорость работы была слишком маленькая для наших решений. Что меня больше всего смущает, что делая вручную выборку из одного изображения(картинкой с телефона махал перед вэб-камерой) всё работает хорошо при позитивной выборке ~800 и негативной ~1500. Теоретический я делаю то же самое, только автоматически с помощью OpenCV, но уже не проходит больше чем 7-10 уровней, при желаемых 15-20.