Tutorial de Programação Python
On Novembro 29, 2021 by adminDrawing and Writing on Image OpenCV Python Tutorial
Neste tutorial do OpenCV com o Python, vamos cobrir como desenhar várias formas nas suas imagens e vídeos. É bastante comum querer marcar objetos detectados de alguma forma, então nós os humanos podemos facilmente ver se nossos programas estão funcionando como esperamos. Um exemplo disto seria uma das imagens mostradas antes:
Para este exemplo temporário, vou usar a seguinte imagem:
Você é encorajado a usar sua própria imagem. Como de costume, nosso código inicial pode ser algo como:
import numpy as npimport cv2img = cv2.imread('watch.jpg',cv2.IMREAD_COLOR)
Next, podemos começar a desenhar, como:
cv2.line(img,(0,0),(150,150),(255,255,255),15)cv2.imshow('image',img)cv2.waitKey(0)cv2.destroyAllWindows()
O cv2.line() leva os seguintes parâmetros: onde, coordenadas iniciais, coordenadas finais, cor (bgr), espessura da linha.
O resultado aqui:
Alright, cool, vamos ficar absurdos com mais algumas formas. A seguir, um retângulo:
cv2.rectangle(img,(15,25),(200,150),(0,0,255),15)
Os parâmetros aqui são a imagem, a coordenada superior esquerda, a coordenada inferior direita, cor, e espessura da linha.
Como sobre um círculo?
cv2.circle(img,(100,63), 55, (0,255,0), -1)
Os parâmetros aqui são a imagem/quadro, o centro do círculo, o raio, a cor, e depois a espessura. Note que temos um -1 para a espessura. Isto significa que o objeto será realmente preenchido, então vamos obter um círculo preenchido.
Linhas, retângulos, e círculos são legais e tudo, mas e se quisermos um pentágono, ou octógono, ou octógono?! Sem problemas!
Primeiro, nomeamos pts, abreviatura para pontos, como uma matriz numérica de coordenadas. Depois, usamos o cv2.polylines para desenhar as linhas. Os parâmetros são os seguintes: para onde o objeto está sendo desenhado, as coordenadas, caso “conectemos” o ponto final e inicial, a cor, e novamente a espessura.
A última coisa que você pode querer fazer é escrever na imagem. Isto pode ser feito assim:
font = cv2.FONT_HERSHEY_SIMPLEXcv2.putText(img,'OpenCV Tuts!',(0,130), font, 1, (200,255,155), 2, cv2.LINE_AA)
Código completo até este ponto seria algo como:
O resultado:
No próximo tutorial, vamos cobrir operações básicas de imagem que podemos realizar.
Deixe uma resposta