OpenCV Python ŌĆō 如何在图像上执行按位非操作?
在图像处理中,按位非是一种常见的操作,它可以将每个像素的二进制值按位取反。这种操作可以用来改变图像的亮度、对比度和颜色,也可以用来去除背景或把图像转换成黑白形式。在本文中,我们将介绍如何使用Python的OpenCV库在图像上执行按位非操作。
准备工作
在开始之前,我们需要先安装OpenCV库。你可以使用以下命令在Python中安装OpenCV:
pip install opencv-python-headless
然后使用以下代码导入所需的库:
import cv2
import numpy as np
from matplotlib import pyplot as plt
加载图像
在开始操作之前,我们需要先加载一张图像。你可以使用以下代码将一张名为”sample.jpg”的图像加载到程序中:
img = cv2.imread("sample.jpg")
按位非操作
下一步,我们要对图像执行按位非操作。OpenCV提供了一个函数cv2.bitwise_not()来实现这个操作。这个函数接受一个图像作为参数,并返回该图像的按位非值。
以下是一个示例代码,它执行了按位非操作并将结果显示在屏幕上:
not_img = cv2.bitwise_not(img)
cv2.imshow("Original", img)
cv2.imshow("Not Image", not_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
在这段代码中,我们首先使用cv2.bitwise_not()函数对我们的输入图像”img”执行按位非操作,将结果存储在变量”not_img”中。然后,我们使用cv2.imshow()函数分别显示输入图像和按位非图像。最后,我们使用cv2.waitKey()函数等待用户按下任意键才能关闭窗口,并使用cv2.destroyAllWindows()函数关闭所有窗口。
结论
现在,你已经了解了如何使用Python的OpenCV库在图像上执行按位非操作。这个操作可以用来改变图像的亮度、对比度和颜色,也可以用来去除背景或把图像转换成黑白形式。希望这篇文章对你有所帮助!