📅  最后修改于: 2023-12-03 15:25:17.324000             🧑  作者: Mango
在这个项目中,我们将探讨如何使用 Python 中的 OpenCV 库将一张图像转换成草图。
草图是一种黑白的、画风自然的艺术风格,通常是利用铅笔、木炭等工具绘制。草图特别注重描绘形态和轮廓,并强调细节的表现。
将图像转换成草图的过程通常可以分为以下步骤:
下面是使用 Python 中的 OpenCV 库实现以上步骤的代码:
import cv2
# 读入图像
img = cv2.imread('test.jpg')
# 将彩色图像转换成灰度图像
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 将灰度图像进行高斯模糊处理
blur_img = cv2.GaussianBlur(gray_img, (7, 7), 0)
# 将高斯模糊处理后的图像进行边缘检测
canny_img = cv2.Canny(blur_img, 50, 150)
# 将边缘检测后的图像进行二值化处理
ret, thresh_img = cv2.threshold(canny_img, 127, 255, cv2.THRESH_BINARY)
# 将二值化后的图像颜色反转,使其变成黑白的草图
inverted_img = cv2.bitwise_not(thresh_img)
# 显示结果图像
cv2.imshow('original image', img)
cv2.imshow('sketch image', inverted_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
这是一个简单的草图生成的示例。通过这个例子,我们可以看到使用 OpenCV 进行图像处理是多么简单和有趣。希望这个教程对你有所帮助!