在Python OpenCV函数中, | 符号常用于图像掩码(image mask)操作。在这个上下文中,符号 | 可以被理解为逻辑或(logical OR)操作,它将两个掩码合并成新的掩码。图像掩码是一个二进制图像,其中像素值用于选择是否在某个像素上执行图像操作。例如,可以在阈值操作cv2.threshold中使用图像掩码,以便仅对一部分图像执行操作。
以下是一个使用 | 符号的代码示例:
import cv2
# 读取图像并创建空白掩码图像
img = cv2.imread('input.jpg', 0)
mask = cv2.imread('mask.jpg', 0)
# 应用阈值操作,使用掩码操作
thresholded = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU, mask=mask)
# 显示结果图像
cv2.imshow('thresholded', thresholded)
cv2.waitKey(0)
cv2.destroyAllWindows()
在上面的代码中,应用了阈值操作cv2.threshold作为图像处理步骤。使用符号 | 将cv2.THRESH_BINARY和cv2.THRESH_OTSU组合为一个参数,这意味着在阈值处理时同时使用了这两种方法。最后,在mask参数中提供了一个图像掩码,只有在掩码像素为1(即“白色”)的位置才会执行阈值操作。