如何在OpenCV Python中对图像执行位异或操作?
彩色图像(RGB)有三个通道:红色、蓝色和绿色。图像表示为3维numpy数组。图像的像素值使用8位无符号整数(uint8)存储,范围为“0到255”。
对两个图像执行位异或运算是在相应图像的像素值的二进制表示上执行的。
以下是执行两个图像的位异或操作的语法 –
这里,img1和img2是两个输入图像,mask是一个掩码操作。
步骤
要计算两个图像之间的位异或运算,可以按照以下步骤操作 –
导入所需的库 OpenCV,Numpy 和 Matplotlib 。确保您已经安装了它们。
使用 cv2.imread() 方法读取图像。图像的宽度和高度必须相同。
使用 cv2.biwise_xor(img1,img2) 计算两个图像的位异或。
显示位异或图像。
我们将使用以下图像作为 输入文件 在下面的示例中。
示例1
在下面的Python程序中,我们计算两个彩色图像的位异或。
输出
当您运行此Python程序时,它将生成以下输出 –
示例2
以下程序显示了位异或操作在两个图像上的应用。我们创建了两个图像,一个圆形和一个相同大小的正方形。
输出
运行该Python程序,将会产生以下输出 −