Imagem PIL para Numpy Array

Imagem PIL para Numpy Array

Pil é uma biblioteca Python como Numpy. Numpy é usado para lidar com matrizes e listas com funções embutidas matemáticas adicionais que podemos utilizar importando a biblioteca Numpy e chamando o método que queremos usar. PIL é usado para lidar com imagens. PIL significa biblioteca de imagens Python. PIL pode abrir, mudar e salvar diferentes formatos de imagem. PIL é uma ferramenta de processamento de imagem. Aqui, surge a pergunta por que sentimos a necessidade de PIL. A forma mais fácil e compreensível de dados é a imagem que transmite seu significado como nenhum outro formulário de dados pode apresentar. No Machine Learning (ML), usamos dados de imagem em altura, largura e formato de canal ao lidar com um grande conjunto de dados. Para obter o formato de altura, peso e canal, a imagem pode ser alterada em uma matriz numpy. Numpy Array contém valores, todos os valores têm o mesmo tipo de dados e contém zero, e números inteiros positivos chamados inteiros não negativos.

Requisitos

Para converter a imagem PIL em uma matriz Numpy, devemos ter instalado Numpy em nosso sistema. Em versões mais altas do Python, ele já está instalado. No entanto, em versões anteriores, devemos instalá -las manualmente utilizando o seguinte comando:

pip install numpy


"Travesseiro", ou "pil", é o componente adicional que deve ser instalado em nossos sistemas. A seguinte declaração pode ser usada para instalá -la.

PiP Instale travesseiro


ou

pip install pil


O travesseiro é apenas uma atualização do PIL com funções internas que podemos usar em nosso código chamando diferentes métodos.

Sintaxe

asArray (function_name.abrir())


Para usar esta função, devemos importar dois pacotes, uma biblioteca "Numpy" e o outro "PIL".

Parâmetros

function_name: O parâmetro "function_name" será pil.

função aberta (): Isso vai abrir a imagem. Dentro dos parênteses, forneça o caminho da imagem em citações únicas ou duplas.

função asarray (): Ele converterá a imagem na matriz.

Também podemos converter a imagem em uma matriz usando o NP.Método Array (). Para isso, precisamos importar Numpy de maneira diferente, eu.e.,

importar numpy como np.

Imagem

Usaremos esta imagem para convertê -la em uma matriz com diferentes metodologias.

Convertendo a imagem PIL em uma matriz usando o método asarray ()

Podemos utilizar diferentes técnicas para converter uma imagem PIL em uma matriz. Aqui, aplicamos o método asarray () para esse fim, e este é muito simples.


Para alterar a imagem PIL em uma matriz, primeiro importe os módulos. Aqui, duas bibliotecas são necessárias. Um é importar o método asarray () de Numpy, e o outro é importar a imagem do PIL. Para abrir a imagem necessária, use a função Open (). Dentro deste método, escreva a localização da imagem ou nome se a imagem estiver na mesma pasta em que salvamos o código Python. Em seguida, escreva o nome da imagem com uma extensão. Se a imagem for salva em outro lugar, forneça o endereço completo da imagem. E salve o valor do método open () na variável "imagem". Agora, chame a função asarray () para converter a imagem na matriz. Dentro desta função, coloque o nome da variável onde carregamos a imagem que queremos ser convertida. Aqui carregamos na variável "imagem". Em seguida, mantenha seu valor em uma nova variável, "arr". Para imprimir a matriz junto com uma mensagem, invocaremos o método print ().


Aqui está a saída do código. Primeiro, o método Open () PIL carregará a imagem e, em seguida, o método asarray () converte essa imagem específica em uma matriz. O print () mostra a matriz na tela com uma mensagem.

Modifique a imagem para Numpy Array usando NP.Função Array ()

Vamos transformar a imagem PIL em uma matriz chamando um NP.Função Array ().


Para converter a imagem em uma matriz Numpy, precisamos importar os pacotes de Numpy e Pil. Importar o módulo Numpy como NP. Usaremos "np" como o nome da função. Do módulo PIL, importaremos uma imagem para abrir a imagem específica em PIL. Na próxima declaração, o .a função aberta () é chamada. Dentro da função Open (), especifique o nome da imagem que queremos converter em uma matriz com uma extensão ou fornecer um caminho completo se a imagem não estiver na mesma pasta em que o arquivo de código Python é salvo. Armazene a imagem carregada em uma variável. Use o NP.Função de Array () para converter a imagem PIL em uma matriz. Escreva o nome da variável em que armazenamos a imagem carregada dentro da função Array (). Usaríamos uma declaração de impressão para representar a matriz resultante na tela de saída.


Aqui está a matriz convertida. O resultado dos códigos do primeiro e segundo exemplo são os mesmos, porque usamos a mesma imagem para convertê -lo na matriz. Mas a conversão pode ser feita por duas abordagens diferentes.

Use a função Array () para alterar uma imagem para uma matriz numpy e verifique a forma da matriz

Este código modificará a imagem PIL em uma matriz e depois exibirá a altura, largura e dimensões das matrizes convertidas.


Importar os módulos necessários numpy e a imagem é a etapa principal. Abra a imagem que queremos converter em uma matriz usando o método open (). Esta função contém o endereço da imagem como seu argumento. Em seguida, armazene a imagem carregada em uma variável "IMG". Ligue para o NP.Função de Array () para converter a imagem na matriz. Passe a imagem carregada para o NP.Método Array () como seu parâmetro. No final, o método da forma é utilizado para adquirir a altura, largura e dimensão da matriz convertida. Exibir a mensagem e a altura, largura e dimensão da matriz declarando a declaração de impressão.


O resultado ilustra a forma da imagem usando uma matriz.

Conclusão

No artigo, conversamos sobre a conversão da imagem PIL em uma matriz Numpy, que é uma xícara de bolo se instalarmos adequadamente o módulo Numpy e Pil ou travesseiro no ambiente do sistema. O procedimento de instalação exigirá algum tempo, porque temos que instalar o PIL. Abordamos diferentes abordagens para modificar a imagem para uma matriz numpy. Uma técnica envolve o uso do método asarray (), e a outra consiste no uso do NP.Função Array (). Apenas uma imagem foi modificada para demonstrar que todos os resultados de todos os procedimentos serão os mesmos. Também temos a forma de uma imagem, mas para isso, temos que converter a imagem em uma matriz numpy e depois usar o .método de forma para encontrar a forma da imagem.