Escolar Documentos
Profissional Documentos
Cultura Documentos
Cabeçalho
import cv2
import numpy as np
from matplotlib import pyplot as plt
from google.colab.patches import cv2_imshow
exercicio 1
imagem1 = cv2.imread('toycars1.png')[:,:,::-1]
imagem2 = cv2.imread('toycars2.png')[:,:,::-1]
imagem3 = cv2.imread('toycars3.png')[:,:,::-1]
mask1 = cv2.imread('toycars1_mask.png')
mask2= cv2.imread('toycars2_mask.png')
imagem4 = cv2.imread('toycars3.png')
mov1 = cv2.subtract(imagem1,imagem2)
mov2 = cv2.subtract(imagem1,imagem3)
cv2_imshow(mov1)
cv2_imshow(mov2)
movComp1 = cv2.add(mov1,mov2)
movComp = cv2.add(movComp1,imagem1)
cv2_imshow(movComp)
imagem1 = cv2.imread('toycars1.png',0)
imagem2 = cv2.imread('toycars2.png',0)
mask1 = cv2.imread('toycars1_mask.png',0)
mask2= cv2.imread('toycars2_mask.png',0)
maskSoma = cv2.add(mask1,mask2)
maskInversa = np.zeros([linha,coluna],dtype=int)
for i in range(linha):
for j in range(coluna):
if(maskSoma[i,j] > 0):
maskInversa[i,j] = 0
else:
maskInversa[i,j] = 1
maskFinal = np.zeros([linha,coluna],dtype=int)
for i in range(linha):
for j in range(coluna):
if(mask1[i,j] > 0):
maskFinal[i,j] = 1
else:
maskFinal[i,j] = 0
maskFinal2 = np.zeros([linha,coluna],dtype=int)
for i in range(linha):
for j in range(coluna):
if(mask2[i,j] > 0):
maskFinal2[i,j] = 1
else:
maskFinal2[i,j] = 0
resultado = cv2.multiply(imagem1.astype(float),maskFinal.astype(flo
at))
resultado2 = cv2.multiply(imagem2.astype(float),maskFinal2.astype(f
loat))
resultado3 = cv2.multiply(imagem1.astype(float),maskInversa.astype(
float))
foraCarro = cv2.add(resultado,resultado2)
resultadoFinal = cv2.add(resultado3,foraCarro)
cv2_imshow(resultadoFinal);
exercício 3
hp = cv2.imread('HP48G.jpg',0)
yIniSto = 845
yFimSto = 895
xIniSto = 415
xFimSto = 485
stoCort = hp[yIniSto:yFimSto, xIniSto:xFimSto]
yIniFle = 1320
yFimFle = 1375
xIniFle = 315
xFimFle = 385
fleCort = hp[yIniFle:yFimFle, xIniFle:xFimFle]
fleCortRot = cv2.flip(fleCort,1)
cv2_imshow(fleCortRot)
mask[0:1600, 0:1200] = 1
mask[yIniSto:yFimSto, xIniSto:xFimSto] = 0
mask[yIniFle:yFimFle, xIniFle:xFimFle] = 0
mask[yIniNov:yFimNov, xIniNov:xFimNov] = 0
hpSemBtn = cv2.multiply(hp.astype(float),mask.astype(float))
hpSemBtn[yIniSto:yFimSto, xIniSto:xFimSto] = stoCortRot
hpSemBtn[yIniFle:yFimFle, xIniFle:xFimFle] = fleCortRot
hpSemBtn[yIniNov:yFimNov, xIniNov:xFimNov] = novCortRot
cv2_imshow(hpSemBtn)
Exercicio 1 histograma
niveis de prob
cinza qtd pixel pixel
0 1 1 2 1 0 6 0,3
0 0 0 2 3 1 4 0,2
0 2 2 0 3 2 4 0,2
7 7 7 7 1 3 2 0,1
4 0 0
5 0 0
6 0 0
7 4 0,2
20
HistoGrama
10
8
6
4
2
0 1 2 3 4 5 6 7
Exercício 2 equalização
10
8
6
4
2
0 1 2 3 4 5 6 7