LINUX.ORG.RU

История изменений

Исправление Chord, (текущая версия) :

Хотел как проще объяснить, получилось не очень. Изложу подробней:

По факту мои примитивы не стандартные геометрические фигуры (треугольник, квадрат, ромб и т.д.). Примитивы могут быть произвольной формы, их 20 разновидностей, при чем они при разных запусках программы могут менять свою форму. Примитив - это рисунок черным цветом на белом фоне.

Сначала я калибрую эти примитивы (составляю цифровой хэш примитива, каждый бит (1/0) в хэше - это пиксель (черный/белый) на картинке). Прохожу по диагонали картинку примитива и каждый пиксель диагонали запихиваю через сдвиг влево в хэш). И вот таким образом я формирую базу примитивов. Эта база создается при каждом запуске программы заново, т.к. примитивы могут отличаться от запуска к запуску.

А потом в процессе работы программы я считываю опять же по диагонали картинку и сопоставляю полученный хэш и хэши из предварительно созданной базы, таким образом определяя, какой именно примитив был на картинке.

Может ли этот OpenCV работать с примитивами произвольной формы? Которые ещё и обновляются при каждом запуске. И насколько быстро это будет?

Тот способ, который я применяю меня вполне устраивает, но я не знаю, как соотносится скорость обработки в qt и в c#. Собственно об этом и вопрос

Сейчас поле 20х20 клеток каждая 10х10 пикс) с 20 примитивами обрабатывается за 0,05-0,10 сек.

Мне нужно что-то что работало бы под виндой не медленнее чем сейчас

Исходная версия Chord, :

Хотел как проще объяснить, получилось не очень. Изложу подробней:

По факту мои примитивы не стандартные геометрические фигуры (треугольник, квадрат, ромб и т.д.). Примитивы могут быть произвольной формы, их 20 разновидностей, при чем они при разных запусках программы могут менять свою форму. Примитив - это рисунок черным цветом на белом фоне.

Сначала я калибрую эти примитивы (составляю цифровой хэш примитива, каждый бит (1/0) в хэше - это пиксель (черный/белый) на картинке). Прохожу по диагонали картинку примитива и каждый пиксель диагонали запихиваю через сдвиг влево в хэш). И вот таким образом я формирую базу примитивов. Эта база создается при каждом запуске программы заново, т.к. примитивы могут отличаться от запуска к запуску.

А потом в процессе работы программы я считываю опять же по диагонали картинку и сопоставляю полученный хэш и хэши из предварительно созданной базы, таким образом определяя, какой именно примитив был на картинке.

Может ли этот OpenCV работать с примитивами произвольной формы? Которые ещё и обновляются при каждом запуске. И насколько быстро это будет?

Тот способ, который я применяю меня вполне устраивает, но я не знаю, как соотносится скорость обработки в qt и в c#. Собственно об этом и вопрос