Bitwise Operations

Kategori: Python / OpenCV , 04 Ekim 2019 , JanFranco


AND, XOR, OR gibi operasyonları gerçekleştirebilmek için iki adet geometrik şekil oluşturalım:


import cv2
import numpy as np

square = np.zeros((300, 300), np.uint8)
cv2.rectangle(square, (50, 50), (250, 250), 255, -2)
cv2.imshow("Square", square)
cv2.waitKey(0)

ellipse = np.zeros((300, 300), np.uint8)
cv2.ellipse(ellipse, (150, 150), (150, 150), 30, 0, 180, 255, -1)
cv2.imshow("Ellipse", ellipse)
cv2.waitKey(0)

cv2.destroyAllWindows()
Bir adet kare, bir adet elips oluşturduk. AND operasyonunu gerçekleştirelim:


And = cv2.bitwise_and(square, ellipse)
cv2.imshow("AND", And)
cv2.waitKey(0)
AND operasyonu sayesinde iki şeklin kesiştiği noktalar beyaz, diğer noktalar siyah oldu. OR operasyonunu gerçekleştirelim:


bitwiseOr = cv2.bitwise_or(square, ellipse)
cv2.imshow("OR", bitwiseOr)
cv2.waitKey(0) 
OR operasyonu sayesinde şekiller ve şekilleri kesiştiği noktalar beyaz kalan kısımlar siyah oldu. XOR operasyonunu gerçekleştirelim:


bitwiseXor = cv2.bitwise_xor(square, ellipse)
cv2.imshow("XOR", bitwiseXor)
cv2.waitKey(0)
İki şeklin kesiştiği noktalar siyah, şekillerin kesişmeyen noktaları beyaz, kalan kısımlar siyah oldu. NOT operasyonunu görelim:


bitwiseNot_sq = cv2.bitwise_not(square)
cv2.imshow("NOT - square", bitwiseNot_sq)
cv2.waitKey(0)
cv2.destroyAllWindows()
Karenin içi beyaz kalan kısımlar siyah oldu.


Sonraki Yazı: Blurring
Yorumlar

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