Bitwise_and() ve bitwise_not() kavramlarını anlamadım. Biri yardımcı olabilir mi?

openCV’yi öğrenmeye yeni başladım. bitwise_and() ve bitwise_not() kavramlarını anlamadım internetten araştırmama rağmen…Biri açıklayabilir mi?

Nerede denk geldigini, bi de hazir arastirdiysan resmi dokumentasyon linklerini atarsan isimiz kolaylasir.

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_core/py_image_arithmetics/py_image_arithmetics.html

Ben de burayi bulmustum ama tam olarak ne yaptiklari yazmiyor. Normalde renk kanallarindaki deger sayilarini binary olarak dusunup basamaklarina paralel islem yaparlar:

abcd & (AND) xyzw = (a&x)(b&y)(c&z)(d&w)
abcd | (OR) xyzw = (a|x)(b|y)(c|z)(d|w)
~ (NOT) abcd = (~a)(~b)(~c)(~d)

Fakat sayilardan biri sifir veya ful degeri (hatta siyah veya beyaz rengini) temsil etmiyorsa pek mantikli degil.

Ornegin 0b01111111'in (127) bitwise NOT’i 0b10000000 (128); renk tonu olarak dusunursen ayni, ama 0b00000000'in (0) NOT’i 0b11111111 (255); iki ton birbirinden daha farkli olamaz.

Siyah ve beyaz ile calisiyorsak, bunlar AND ve OR islemlerinin yutan ve etkisiz elemanlari:

herhangi renk & siyah = siyah
herhangi renk & beyaz = herhangi renk
herhangi renk | siyah = herhangi renk
herhangi renk | beyaz = beyaz
~siyah = beyaz
~beyaz = siyah

2 Beğeni

Maalesef pek anlayamadım

onemli olan son 6 satir

& = bitwise_and
| = bitwise_or
~ = bitwise_not