Encontrando submatrizes correspondentes dentro de uma matriz

Eu tenho uma matriz de 100x200 2D expressa como um array numpy consistindo de preto (0) e branco (255) células. É um arquivo de bitmap. Eu então tenho formas 2D (é mais fácil pensar nelas como letras) que também são células pretas e brancas 2D.

Eu sei que posso ingenuamente iterar através da matriz, mas isso vai ser uma parte 'quente' do meu código, então a velocidade é uma preocupação. Existe uma maneira rápida de realizar isso em numpy / scipy?

Eu olhei brevemente para a função correlata de Scipy. Eu não estou interessado em 'jogos difusos', apenas correspondências exatas. Eu também olhei alguns trabalhos acadêmicos, mas eles estão acima da minha cabeça.

questionAnswers(2)

yourAnswerToTheQuestion