python-opencv图像的位操作:图像与运算cv2.bitwise_and,图像或运算cv2.bitwise_or,图像非运算cv2.bitwise_not与图像异或运算cv2.bitwise_xor。
1)图像与运算-cv2.bitwise_and(src1, src2, dst=None, mask = None)
2)图像或运算-cv2.bitwise_or(src1, src2, dst=None, mask = None)
3)图像非运算-cv2.bitwise_not(src1, src2, dst=None, mask = None)
图像非运算的效果:一个二值图,将黑色转为白色,白色转为黑色。
4) 图像异或运算-cv2.bitwise_xor(src1, src2, dst=None, mask = None)
这四个运算,最少要有两个参数,即src1,src2;dst:参数返回结果可选,mask:参数也是可选的,指定msk区域进行操作。
import cv2
img1 = cv2.imread('3.jpg')
img2 = cv2.imread('4.jpg')
# bitwise_and
bitwiseAnd = cv2.bitwise_and(img1, img2)
cv2.imwrite('bitwiseAnd.jpg', bitwiseAnd)
# bitwise_or
bitwiseOr = cv2.bitwise_or(img1, img2)
cv2.imwrite('bitwiseOr.jpg', bitwiseOr)
# bitwise_xor
bitwiseXor = cv2.bitwise_xor(img1, img2)
cv2.imwrite('bitwiseXor.jpg', bitwiseXor)
#bitwise_not
bitwiseNot = cv2.bitwise_not(img1, img2)
cv2.imwrite('bitwiseNot.jpg', bitwiseNot)
bitwisenot = cv2.bitwise_not(img1) cv2.imwrite('bitwisenot1.jpg',bitwisenot)