OpenCV Python 如何在图像上进行位运算NOT操作
我们可以使用cv2.bitwise_not()函数在图像上进行位运算NOT操作。以下是在图像上执行位运算NOT操作的语法 –
cv2.bitwise_not(img)
步骤
要在图像上计算位求补,可以按照以下步骤操作:
- 导入所需的库。在下面的示例中,所需的Python库是 OpenCV 。确保已经安装了它。
-
使用 cv2.imread() 方法将输入图像读取为灰度图像。指定图像的完整路径和图像类型(即png或jpg)。
-
使用 cv2.biwise_not(img) 在输入图像上计算 位求补 。
-
显示位求补图像
让我们通过一些Python示例来理解位求补运算在输入图像上的应用。
示例
在此示例中,我们计算输入图像的位求补。
# import required libraries
import cv2
# read an input image.
img = cv2.imread('not.png')
# compute bitwise NOT on input image
not_img = cv2.bitwise_not(img)
# display the computed bitwise NOT image
cv2.imshow('Bitwise NOT Image', not_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
我们将使用以下图像作为此示例的输入文件:
输出
当您运行上述程序时,它将生成以下输出。
请注意输出窗口中不同形状的颜色反转。
示例
在此示例中,我们计算输入图像的位求反。使用此方法,您可以创建图像的负片。
# import required libraries
import cv2
# read an input image
img = cv2.imread('sketch.jpg')
# compute bitwise NOT on input image
not_img = cv2.bitwise_not(img)
# display the computed bitwise NOT image
cv2.imshow('Bitwise NOT Image', not_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
我们将使用以下图片作为此程序的 输入文件 -
输出
当您运行上述程序时,它将产生以下输出 –
请注意,上述输出图片是原始输入图片的负片图像。
示例
在此示例中,我们定义了一个大小为300×300的圆形图像。然后对该图像执行位求反操作。
%matplotlib qt
# import required libraries
import cv2
import numpy as np
import matplotlib.pyplot as plt
# define an image as a circle
img = np.zeros((300, 300), dtype = "uint8")
img = cv2.circle(img, (150, 150), 150, 255, -1)
# perform bitwise NOT on image
not_img = cv2.bitwise_not(img)
# Display the bitwise NOT output image
plt.subplot(121), plt.imshow(img, 'gray'), plt.title("Circle")
plt.subplot(122), plt.imshow(not_img, 'gray'),
plt.title("Bitwise NOT")
plt.show()
输出
当你运行上述程序时,它会产生以下 输出 :
上述输出显示,” 位求反 ” 图像是图像 ” 圆 ” 的反转图像。