Não sei se está errado, mas no desafio da aula 8 eu fiz desta forma e tanto consegui identificar as palavras variando entre letras maiúsculas e minúsculas quanto acima das bounding boxes retornou com o termo de pesquisa da forma que está escrito na imagem. por exemplo: "Learning".
Não sei se em alguma outra ocasião a function poderia quebrar ou não funcionar, mas para o desafio proposto deu certo.
def OCR_processa_imagem(img, termo_pesquisa, config_tesseract, min_config):
resultado = pytesseract.image_to_data(img, lang='por', config=config_tesseract, output_type=Output.DICT)
num_ocorrencias = 0
for i in range(0, len(resultado['text'])):
confianca = int(resultado['conf'][i])
if confianca > min_config:
texto = resultado['text'][i].lower()
if termo_pesquisa in texto:
x, y, img = caixa_texto(i, resultado, img, (0, 0, 255))
texto = resultado['text'][i]
img = escreve_texto(texto, x, y, img, fonte_dir, (50, 50, 225), 14)
num_ocorrencias += 1
return img, num_ocorrencias