2Виталий:
Ну, так они сами всё протестировали и приняли решение приобрести исходные тексты алгоритма AVM. Я их не заставлял.
Vorral писал(а):Как выделяются эти самые фрагменты? Например, как она обработает чёрную букву "Ж" на белом фоне, конкретно интересуют две антенки в виде V, от средней палки.
Предельно просто, смотрим:
- Код: Выделить всё • Развернуть
// Calculation of velocity
void Calculate(IplImage* apImg, CvMat** appVx = NULL, CvMat** appVy = NULL)
Запоминаем по сетке квадратные фрагменты изображения (80x80 пикселей) на предыдущем кадре, а потом на следующем ищем (в окрестности) куда каждый из них сдвинулся.
А с буквой “Ж” всё нормально будет, потому что её усики слева и с право на 180 градусов повёрнуты относительно друг друга (смотрят в разные стороны), а алгоритм AVM к повороту не инвариантен (так что эти усики для него разные объекты). Я бы больше волновался с повторяющимися символами типа «>>>>>» вот тут точно проблема возникнет.