如何用PIL和cv2实现Python蒙版抠图并输出透明背景图片?
- 内容介绍
- 文章标签
- 相关推荐
本文共计720个文字,预计阅读时间需要3分钟。
由于深度学习任务中经常需要处理图像,因此使用蒙版进行图像处理是一种常见的方法。以下是一个简化的代码示例,用于说明如何使用OpenCV和PIL库进行图像处理。
pythonimport cv2from PIL import Image
读取图像image_path='path_to_image.jpg'image=Image.open(image_path)
转换为灰度图像gray_image=image.convert('L')
创建蒙版mask=gray_image.point(lambda x: 255 if x > 128 else 0, '1')
使用蒙版与原图像进行位运算masked_image=cv2.bitwise_and(np.array(image), np.array(image), mask=np.array(mask))
显示结果cv2.imshow('Masked Image', masked_image)cv2.waitKey(0)cv2.destroyAllWindows()
因为最近在做深度学习抠图,正好要用到蒙版进行抠图,所以我将抠图代码进行了封装注释,可以直接使用。
本文共计720个文字,预计阅读时间需要3分钟。
由于深度学习任务中经常需要处理图像,因此使用蒙版进行图像处理是一种常见的方法。以下是一个简化的代码示例,用于说明如何使用OpenCV和PIL库进行图像处理。
pythonimport cv2from PIL import Image
读取图像image_path='path_to_image.jpg'image=Image.open(image_path)
转换为灰度图像gray_image=image.convert('L')
创建蒙版mask=gray_image.point(lambda x: 255 if x > 128 else 0, '1')
使用蒙版与原图像进行位运算masked_image=cv2.bitwise_and(np.array(image), np.array(image), mask=np.array(mask))
显示结果cv2.imshow('Masked Image', masked_image)cv2.waitKey(0)cv2.destroyAllWindows()
因为最近在做深度学习抠图,正好要用到蒙版进行抠图,所以我将抠图代码进行了封装注释,可以直接使用。

