zl程序教程

您现在的位置是:首页 >  后端

当前栏目

OpenCV Python – 如何对图像执行按位 NOT 操作?

PythonOpencv执行 如何 操作 not 图像 按位
2023-09-11 14:18:27 时间

我们可以使用 cv2.bitwise_not() 对图像执行按位 NOT 操作。以下是对图像执行按位 NOT 操作的语法 -

 

cv2.bitwise_not(img)

步骤

要在图像上按位计算 NOT,您可以按照以下步骤操作 -

  • 导入所需的库。在以下所有示例中,所需的 Python 库是 OpenCV。确保您已经安装了它。

  • 使用 cv2.imread() 方法将输入图像读取为灰度图像。使用图像类型(即.png或 jpg)指定图像的完整路径。

  • 使用 cv2.biwise_not(img) 计算输入图像上的按位 NOT

  • 显示按位 NOT 图像

让我们借助一些 Python 示例来了解输入图像上的按位 NOT 操作。

在此示例中,我们按位计算输入图像的 NOT。

 

# 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()

我们将使用以下图像作为此示例的输入文件 -

输出

当您运行上述程序时,它将产生以下输出。

请注意输出窗口中不同形状的颜色反转。

在此示例中,我们按位计算输入图像的 NOT。使用此方法,您可以创建图像的负片。

 

# 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 的图像圈。我们在此图像上按位执行 NOT 操作。

 

%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()

输出

当你运行上面的程序时,它将产生以下输出 -

 

上面的输出显示“按位 NOT”图像是图像“”的反转图像。