Как искать фрагмент массива внутри большего массива, возможно используя порог - PullRequest
0 голосов
/ 06 октября 2019

У меня есть оригинальное изображение, и мне нужно искать фрагменты изображения внутри оригинального изображения. Я посмотрел на уже существующие решения в PIL и CV, они не прозрачны и работают не так точно. Я надеялся, что в numpy может быть функция, которая могла бы сделать то же самое, также используя порог.

full picture:
0   0   0
0   1   0
0   0.9 0
0   1   0
0   0   0
fragment:
1
1
1

фрагмент соответствует полной картинке

Ответы [ 2 ]

0 голосов
/ 06 октября 2019

Вы должны использовать ядра сверток, предпочтительно добавляя свой фрагмент к квадратной матрице, поэтому фрагмент:

1,
0.9,
1

становится:

0, 1, 0,
0, 0.9, 0,
0, 1, 0

Затем вы просто сворачиваете фрагментс полной картиной и поиском максимумов - это будут места, где найден ваш фрагмент.

Вы можете проверить: https://docs.opencv.org/master/d4/dc6/tutorial_py_template_matching.html

0 голосов
/ 06 октября 2019

Если я вас правильно понимаю, вы можете искать это: https://cvisiondemy.com/extract-roi-from-image-with-python-and-opencv/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...