Você está aqui: Python ::: PyAutoGUI ::: Imagens e Processamento de Imagens

Como tirar um print da tela e salvar como PNG usando Python, PyAutoGUI, OpenCV e NumPy

Quantidade de visualizações: 2173 vezes
Nesta dica mostrarei como podemos combinar três bibliotecas muito úteis do Python para desenvolver uma aplicação que tira um print da tela e o salva como imagem. Em nosso caso a imagem será salva como PNG.

Se você ainda não tem esses módulos instalados no seu Python, aqui no site você encontrará o passo-a-passo sobre como instalar e testá-las devidamente.

Neste exemplo eu usei o método screenshot() do PyAutoGUI para tirar o print da tela. Em seguida usamos numpy.array() para converter o resultado em uma matriz do NumPy. Os passos seguintes foram o uso da função cvtColor() do OpenCV para converter a matriz em imagem e, finalmente, salvamos a imagem usando a função imwrite() do OpenCV.

Veja a seguir o código Python completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# vamos importar os módulos necessários
import cv2
import pyautogui
import numpy

# método principal
def main():
  # primeiro adquirimos o arquivo PIL
  arquivo_pil = pyautogui.screenshot()

  # convertemos o arquivo PIL para uma matriz da NumPy
  matriz_imagem = numpy.array(arquivo_pil)

  # agora construímos a imagem usando o método cvtColor() da OpenCV
  imagem = cv2.cvtColor(matriz_imagem, cv2.COLOR_RGB2BGR)

  # e finalmente salvamos a imagem
  cv2.imwrite('print_tela.png', imagem)

if __name__== "__main__":
  main()


Link para compartilhar na Internet ou com seus amigos:

Python ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como calcular a equação reduzida da reta em Python dados dois pontos pertencentes à reta

Quantidade de visualizações: 2981 vezes
Nesta dica de Python veremos como calcular a equação reduzida da reta quando temos dois pontos pertencentes à esta reta. Não, nessa dica não vamos calcular a equação geral da reta, apenas a equação reduzida. Em outras dicas do site você encontra como como isso pode ser feito.

Para relembrar: a equação reduzida da reta é y = mx + n, em que x e y são, respectivamente, a variável independente e a variável dependente; m é o coeficiente angular, e n é o coeficiente linear. Além disso, m e n são números reais. Com a equação reduzida da reta, é possível calcular quais são os pontos que pertencem a essa reta e quais não pertencem.

Vamos começar então analisando a seguinte figura, na qual temos dois pontos que pertencem à uma reta:



Note que a reta da figura passa pelos pontos A(5, 5) e B(9, 2). Então, uma vez que já temos os dois pontos, já podemos calcular a equação reduzida da reta. Veja o código Python completo para esta tarefa:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# método principal
def main():
  # vamos ler as coordenadas do primeiro ponto
  x1 = float(input("Coordenada x do primeiro ponto: "))
  y1 = float(input("Coordenada y do primeiro ponto: "))
  
  # vamos ler as coordenadas do segundo ponto
  x2 = float(input("Coordenada x do segundo ponto: "))
  y2 = float(input("Coordenada y do segundo ponto: "))
 
  sinal = "+"
  # vamos calcular o coeficiente angular da reta
  m = (y2 - y1) / (x2 - x1)
  # vamos calcular o coeficiente linear
  n = y1 - (m * x1)
 
  # coeficiente linear menor que zero? O sinal será negativo
  if (n < 0):
    sinal = "-"
    n = n * -1
  
  # mostra a equação reduzida da reta
  print("Equação reduzida: y = %.2fx %s %.2f" % (m, sinal, n))

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

Coordenada x do primeiro ponto: 5
Coordenada y do primeiro ponto: 5
Coordenada x do segundo ponto: 9
Coordenada y do segundo ponto: 2
Equação reduzida: y = -0,75x + 8,75

Para testarmos se nossa equação reduzida da reta está realmente correta, considere o valor 3 para o eixo x da imagem acima. Ao efetuarmos o cálculo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

>> y = (-0.75 * 3) + 8.75
y = 6.5000

temos o valor 6.5 para o eixo y, o que faz com que o novo ponto caia exatamente em cima da reta considerada na imagem.


Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como converter radianos em graus na linguagem Python

Quantidade de visualizações: 5250 vezes
Todos os métodos e funções trigonométricas em Python recebem seus argumentos em radianos, em vez de graus. Um exemplo disso é a função sin() do objeto math, no módulo math. Esta função recebe o ângulo em radianos e retorna o seu seno.

No entanto, há momentos nos quais precisamos retornar alguns valores como graus. Para isso é importante sabermos fazer a conversão de radianos para graus. Veja a fórmula abaixo:

\[Graus = Radianos \times \frac{180}{\pi}\]

Agora veja como esta fórmula pode ser escrita em código Python:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import math

# função principal do programa
def main():
  # valor em radianos
  radianos = 1.5
  # obtém o valor em graus
  graus = radianos * (180 / math.pi)
  # mostra o resultado
  print(radianos, "radianos convertidos para",
    "graus é", graus)
 
if __name__== "__main__":
  main()

Ao executarmos este código Python nós teremos o seguinte resultado:

1.5 radianos convertidos para graus é 85.94366926962348

Para fins de memorização, 1 radiano equivale a 57,2957795 graus.

Por fim, saiba que a linguagem Python nos oferece o método math.degrees() que nos permite converter ângulos radianos em graus. Meu propósito nesta dica foi mostrar a você como o cálculo de conversão pode ser escrito em Python. Em outras dicas dessa seção abordaremos o método math.degrees().


Python ::: Matplotlib Python Library (Biblioteca Python Matplotlib) ::: Geração e Plotagem de Gráficos usando Matplotlib

Como gerar o gráfico da função seno usando a biblioteca Matplotlib do Python

Quantidade de visualizações: 2547 vezes
Sabemos, como lembrança das nossas aulas de Trigonometria no segundo grau, que a função seno é a razão entre o cateto oposto e a hipotenusa de um triângulo retângulo, ou seja, trata-se de uma razão trigonométrica que retorna valores na faixa de -1 até 1 (ambos inclusos).

Nesta dica mostrarei como podemos usar as capacidades de geração de gráficos da biblioteca Matplotlib da linguagem Python, combinadas com as funções arange() e sin() da biblioteca NumPy para gerar o gráfico da função seno.

Antes de vermos o código, observe o resultado gerado na imagem a seguir:



Veja agora o código Python completo para a geração do gráfico:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# importamos a biblioteca NumPy
import numpy as np
#importamos a biblioteca Matplotlib
import matplotlib.pyplot as plt
 
def main():
  # definimos o título para a área de plotagem
  plt.title('Gráfico da Função Seno')
 
  # vamos exibir o grid da área de plotagem
  plt.grid(True)
 
  # vamos definir os valores da coordenada x
  # os valores gerados serão de 0 até 12 (não incluído)
  eixo_x = np.arange(0, 12, 0.1)

  # os valores da coordenada y serão o seno de
  # cada valor correspondente no eixo x
  eixo_y = np.sin(eixo_x)
 
  # vamos plotar a função seno agora
  plt.plot(eixo_x, eixo_y)
 
  # finalmente exibimos o resultado
  plt.show()
 
if __name__== "__main__":
  main()



Desafios, Exercícios e Algoritmos Resolvidos de Python

Veja mais Dicas e truques de Python

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 25 usuários muito felizes estudando em nosso site.