Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Parâmetro cv.INTERLANCZOS4 em desuso

A linha de código abaixo retorna erro, module 'cv2' has no attribute 'INTERLANCZOS4'

imagem = cv2.resize(imagem, (200,200), interpolation=cv.INTERLANCZOS4)

Modifiquei o parâmetro para:

imagem = cv2.resize(imagem, (200,200), interpolation=cv2.INTER_AREA)

e resolveu o problema.

2 respostas
solução!

Oi Frederico! Tudo bem por ai?

O parâmetro interpolation=cv.INTERLANCZOS4 realmente não existe no OpenCV, no entanto, o paramento que foi adotado na aula é definido como cv.INTER_LANCZOS4, que é bem semelhante ao cv.INTERLANCZOS4 e por isso pode causar alguma confusão no momento da escrita. O parametro cv.INTER_LANCZOS4 continua em uso na biblioteca OpenCV como informa a documentação e você pode usar ele sem preocupações, seguindo o código:

imagem = cv2.resize(imagem, (200,200), interpolation=cv.INTER_LANCZOS4)

A forma como você fez, utilizando o parâmetro interpolation=cv2.INTER_AREA é também uma ótima opção de uso, foi uma jogada muito boa para seu problema e você mandou muito bem!

Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Excelente, Mirla.

Um ponto importante sobre os interpoladores, é que cada um é para uma finalidade bem específica.

O interpolador por área ("INTER_AREA") por exemplo, é mais indicado para reduzir imagens pois utiliza amostragem de áreas de pixel para diminuir o tamanho de uma imagem. Já o Lanczos, é um interpolador mais complexo cuja principal finalidade é reconstruir as regiões ausentes numa imagem aumentada, sua interpolação utiliza a função sinc para reconstrução dos pixels.