Python - Criando Arte ASCII a partir de Imagens usando Python e PIL
Python - Abrindo Imagem, e imprimindo em prompt | ||
Canal Qb |
Introdução:
Você já imaginou transformar suas imagens favoritas em belas e intrigantes obras de arte ASCII? Neste post, vamos explorar como usar o Python e a biblioteca PIL (Python Imaging Library) para realizar essa tarefa criativa. Vamos mergulhar no processo de abertura de imagens, exibição em uma interface gráfica e conversão para arte ASCII.
Passo 1: Preparando o Terreno
Para começar, importaremos as bibliotecas necessárias: `PIL` para manipulação de imagens e `tkinter` para criar uma interface gráfica simples. Certifique-se de ter instalado essas bibliotecas em seu ambiente Python.
from PIL import Image, ImageTkimport tkinter as tk
Passo 2: Abrindo e Exibindo a Imagem
Primeiro, vamos abrir a imagem escolhida usando a PIL e exibi-la em uma janela usando o `tkinter`. Isso nos permitirá visualizar a imagem original antes de convertê-la em arte ASCII.
caminho_imagem = "screenshot.png"janela = tk.Tk()imagem_pillow = Image.open(caminho_imagem)imagem_tk = ImageTk.PhotoImage(imagem_pillow)label_imagem = tk.Label(janela, image=imagem_tk)label_imagem.pack()janela.mainloop()
Passo 3: Transformando em Arte ASCII
Agora, vamos mergulhar na parte mais emocionante: converter a imagem em arte ASCII! Começaremos redimensionando a imagem para um tamanho menor e, em seguida, transformando os pixels em caracteres ASCII. Vamos ajustar o fator de redução para controlar o tamanho da arte resultante.
largura, altura = imagem_pillow.sizefator_reducao = 0.1 # Ajuste esse valor para controlar o tamanho da arte ASCIIimagem_ascii = imagem_pillow.resize((int(largura * fator_reducao), int(altura * fator_reducao))).convert('L')# Definindo a tabela de caracteres ASCIItabela_ascii = '@%#*+=-:. '# Convertendo pixels para caracteres ASCIIpixels = imagem_ascii.getdata()ascii_art = ''.join([tabela_ascii[pixel // 32] for pixel in pixels])largura_ascii = imagem_ascii.width# Dividindo a arte ASCII em linhasascii_art = [ascii_art[index:index + largura_ascii] for index in range(0, len(ascii_art), largura_ascii)]
Passo 4: Exibindo a Arte ASCII
Agora que temos a arte ASCII, vamos exibi-la linha por linha, criando uma incrível representação textual da imagem original.
for linha in ascii_art:print(linha)
Conclusão:
Exploramos como criar arte ASCII a partir de imagens usando o Python e a biblioteca PIL. Desde a abertura da imagem até a exibição da arte ASCII, cada etapa ofereceu uma oportunidade de explorar a criatividade e a programação. Então, da próxima vez que quiser dar uma nova vida às suas imagens, experimente essa técnica divertida e compartilhe suas obras-primas ASCII com o mundo!
Link do Script completo: https://cb.run/usdW
Nenhum comentário
Comente só assim vamos crescer juntos!
Observação: somente um membro deste blog pode postar um comentário.