要提取圖像邊界并生成輪廓圖,可以使用Pillow庫中的ImageFilter和ImageOps模塊來實現。下面是一個示例代碼:
from PIL import Image, ImageFilter, ImageOps
# 打開圖像文件
image = Image.open('image.jpg')
# 轉換為灰度圖像
gray_image = image.convert('L')
# 使用Sobel算子進行邊緣檢測
edge_image = gray_image.filter(ImageFilter.FIND_EDGES)
# 生成輪廓圖
contour_image = ImageOps.invert(edge_image)
# 保存輪廓圖
contour_image.save('contour_image.jpg')
在這個示例中,首先打開圖像文件,然后將其轉換為灰度圖像。接下來使用Sobel算子進行邊緣檢測,然后生成輪廓圖并保存到文件中。你可以根據需要調整參數和算法來獲得更好的效果。