P.D.I. em COLAB


Processamento digital de imagens
programando em Google Colab


Introdução - Primeiros passos em programação

Então, entre no COLAB e vamos escrever um programa.

Primeiro, use a opção +Texto para introduzir uma descricao de seu programa e desloque este bloco para o topo. Pode ser: "Programa 1: soma de elementos"

Escreva uma sequencia de comandos no segundo bloco, por exemplo: a=5
b=3
c=a+b
print(c)

. Para executar seu programa use a tecla com um triangulo branco em um círculo preto (play). após uns segundos (demora mais na primeira vez), o resultado será mostrado em um novo bloco logo abaixo.

Mude os valores das variáveis "a" e "b" para produzir novos resultados. A área de resultados será atualizada a cada execução.

Vocé pode, assim, criar uma série de comentários e comandos no ambiente Colab.

Usando Colab, calcule o valor da área de um terreno que tem 12 metros de frente e 29.35m de fundo.

OBS: os decimais são separados por ponto.

para tornar sua saída mais agradável, pode combinar textos e variáveis separados por vírgulas no mesmo print. a=5
b=3
c=a*b
print("frente=", a, "fundo=", b, "área=" ,c)

Parabéns! saiu da estaca zero...

não esqueça: Para rodar este trecho de programa use a tecla play (triângulo). Após uns segundos aparece um sinal verde mostrando que deu certo. SE ocorreu um erro, um texto em vermelho aparece a seguir.

usando bibliotecas

PYTHON é uma linguagem de programação concebida em módulos, ou bibliotecas. Inicialmente é carregado um módulo básico que permite as operações básicas, como a soma, mas existem muitas outras possibilidades.

para enriquecer seus programas, pode usar bibliotecas prontas, que disponibilizam funções específicas para determinadas finalidades. Existem, por exemplo, bibliotecas para manipulação de imagens, construção de gráficos, redes neurais, etc, etc... uma grande variedade.

Como em outras linguagens (como em C++, por exemplo) as bibliotecas devem ser incluídas na parte inicial do programa antes de sua chamada. Fazendo uma analogia, é equivalente a incluir bibliotecas em C++ com o comando "include"

A seguir tem um trecho de programa que inclui algumas bibliotecas básicas que usaremos no curso. Isto é feito usando o comando import, por exemplo:

import numpy
Inclui a biblioteca básica de processamento de dados científicos. Esta biblioteca tem funções matemáticas muito úteis, como trigonométricas, logaritmos, ou operação de matrizes. Vale a pena dar uma olhada na descrição. Consulte "https://numpy.org/doc/stable/user/whatisnumpy.html" Você também pode usar a opção: import numpy as np Neste caso, você importa a biblioteca numpy mas, em lugar de chamar os comando usando o nome numpy você pode usar um nome mais curto, como np. Isto faz sentido se o nome da biblioteca for muito extenso.

import matplotlib.pylab as plt
inclui uma biblioteca que permite plotar figuras e imagens na tela. É muito útil para nossa disciplina. import numpy as np
import matplotlib.pylab as plt

Vetores (e matrizes com NUMPY)

Agora, vamos graficar (com matplotlib) séries de números (vetores) na tela.

import numpy as np
import matplotlib.pylab as plt
X= [ 1,2,3,5,6,7,9]
n=len(X)
print('tamanho', n)
plt.plot(X )
plt.show()

plt.plot() cria o gráfico na memória. Você pode incluir nomes de eixos, título, etc, etc, antes de mostrar o produto final com plt.show


Loops (iterações)

um LOOP é uma série de comandos que podem ser repetidos várias vezes. Por exemplo, se quemos saber o valor do quadrado de cada um dos elementos do vetor mostrado acima, podemos calcular isto usando sete linhas...

ah! Python começa contar em zero.

  • Criamos um vetor vazio, do mesmo tamanho, para armazenar o resultado
  • calculamos o quadrado de um elemento e mostramos o resultado
  • sete vezes! Y=np.zeros(n,dtype = float)

    Y[0]=X[0]*X[0]
    print('quadrado de', X[0], '=', Y[0])
    Y[1]=X[1]*X[1]
    print('quadrado de', X[2], '=', Y[1])
    Y[2]=X[2]*X[2]
    print('quadrado de', X[3], '=', Y[2])
    Y[4]=X[4]*X[4]
    print('quadrado de', X[4], '=', Y[4])
    Y[5]=X[5]*X[5]
    print('quadrado de', X[5], '=', Y[5])
    Cansei!

    imagina se tivesse 256 números?

    Usando um loop podemos delimitar um bloco de comandos que devem ser repetidos, com a função for() e acessar os elementos dos vetores pelos seus índices. São "n" elementos, pois já obtivemos esse valor antes...

    A sintaxe é:
    for i in range(n):
    Isto cria um loop variando a variável "i" de 0 até n-1. Em nosso caso 0-6. Vamos ver se funciona? Não esqueça do : (dois pontos) no final desta linha. Tudo o que for repetido neste loop deve ser deslocado para direita (TAB) para mostrar o escopo do loop. for i in range(tam):
         print(i)
    Agora vamos aos quadrados Y=X*X: