Drawing

Kategori: Computer Vision , 18 Ocak 2020 , JanFranco


OpenCV kütüphanesini kullanarak resim üzerinde dikdörtgen, daire, çokgen gibi geometrik şekiller çizebiliriz. Resmin üzerine yazı yazabiliriz. İlk olarak kütüphaneleri dahil edelim:


import cv2
import numpy as np
import matplotlib.pyplot as plt
Siyah arkaplanlı 512x512 boyutlu bir resim oluşturalım. Bunun için sıfırlar matrisini kullanabiliriz:


blankImg = np.zeros((512, 512, 3), dtype=np.int16)
plt.imshow(blankImg)
plt.show()




Bir dikdörtgen çizelim. Dikdörtgen çizmek için başlangıç ve bitiş noktasını vermek yeterli olacaktır. Ayrıca renk ve kalınlık değerlerini de vermemiz gerekli:


cv2.rectangle(blankImg, pt1=(12, 25), pt2=(150, 400), color=(0, 255, 0), thickness=5)
plt.imshow(blankImg)
plt.show()




Farklı renkte şekiller çizmeye devam edelim. Eğer thickness değerini -1 verirsek, şeklin içi doldurulur:


cv2.rectangle(blankImg, pt1=(50, 50), pt2=(100, 100), color=(255, 0, 0), thickness=5)
cv2.circle(blankImg, center=(200, 200), radius=25, color=(0, 0, 255), thickness=5)
cv2.circle(blankImg, center=(300, 360), radius=40, color=(0, 0, 255), thickness=-1)
plt.imshow(blankImg)
plt.show()




Bir çizgi çizelim:


cv2.line(blankImg, pt1=(0, 0), pt2=(450, 450), color=(125, 125, 0), thickness=2)
plt.imshow(blankImg)
plt.show()




Tekrardan siyah bir resim oluşturalım yani temizleyelim ve bir yazı yazalım:


blankImg = np.zeros((512, 512, 3), dtype=np.int16)
plt.imshow(blankImg)
plt.show()

font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(blankImg, text='Hello blankImg', org=(10, 400), fontFace=font, fontScale=2,
            color=(255, 255, 255), thickness=2, lineType=cv2.LINE_AA)
plt.imshow(blankImg)
plt.show()






Çokgen çizelim. Çokgen çizmek için koordinatların bulunduğu bir listeyi parametre olarak göndermeliyiz. Ayrıca isClosed değerini de True yapmalıyız:


points = np.array([[50, 150], [100, 100], [200, 150], [100, 200]], dtype=np.int32)
cv2.polylines(blankImg, [points], isClosed=True, color=(0, 255, 0), thickness=5)
plt.imshow(blankImg)
plt.show()



Sonraki Yazı: Mouse Events
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın