В настоящее время я пишу проект на Python с OpenCV, который пытается определить положение фигур на шахматной доске на экране.
Мне удалось успешно использовать функцию сопоставления шаблонов для определения местоположения каждого фрагмента. Это делается путем получения скриншота всей доски и запуска функции сопоставления шаблонов 12 раз (по 6 типов фигур для каждого цвета). Сейчас я пытаюсь улучшить скорость работы программы. Вот где я считаю, что могу значительно повысить производительность:
Насколько я понимаю, алгоритм сопоставления шаблонов в основном перемещает изображение шаблона по базовому изображению по одному пикселю за раз, чтобы ищите спички. Очевидно, я ожидал бы совпадений только в 64 квадратах доски, поэтому перемещение изображения по одному пикселю за раз невероятно неэффективно. Есть ли какой-нибудь способ настроить интервал скольжения так, чтобы он соответствовал ширине одного квадрата доски, поэтому я проверяю только 64 квадрата. Есть ли еще предложения по увеличению скорости?
Я рассматривал возможность вызова функции сопоставления шаблонов 64 раза для каждого типа фигур, чтобы сопоставить их с каждым отдельным квадратом того же размера. Я не уверен, что это будет даже быстрее, плюс получение 64 снимков экрана также займет значительное количество времени.
Подробнее здесь: https://stackoverflow.com/questions/442 ... -in-opencv
Повышение производительности сопоставления шаблонов в OpenCV ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение