OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,包含多种图像处理和计算机视觉算法。分段蒙版(Segmentation Mask)是一种用于图像分割的技术,它将图像分割成多个区域,并为每个区域分配一个唯一的标签。
以下是一个使用OpenCV进行图像分割并生成分段蒙版的简单示例:
import cv2
import numpy as np
# 读取图像
image = cv2.imread('input.jpg')
# 转换为灰度图像
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 使用阈值分割
_, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
# 查找轮廓
contours, _ = cv2.findContours(binary, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
# 创建分段蒙版
mask = np.zeros_like(gray)
# 绘制轮廓到蒙版上
cv2.drawContours(mask, contours, -1, (255), thickness=cv2.FILLED)
# 显示结果
cv2.imshow('Original Image', image)
cv2.imshow('Segmentation Mask', mask)
cv2.waitKey(0)
cv2.destroyAllWindows()
通过以上内容,你应该对OpenCV应用分段蒙版有了较为全面的了解。如果有更多具体问题,可以进一步提问。
领取专属 10元无门槛券
手把手带您无忧上云