首页 > 解决方案 > 如何使用 Python 从图像中裁剪椭圆区域

问题描述

我有矩形裁剪的代码,老实说我是 python 的初学者,这个代码是我在网站上看到的

我正在使用 PIL 库

from PIL import Image
im = Image.open("lenna.png")

crop_rectangle = (50, 50, 200, 200)
cropped_im = im.crop(crop_rectangle)

cropped_im.show()

请帮我从图像中裁剪椭圆或圆形区域提前谢谢

标签: python

解决方案


如果图像的范围相同,将图像裁剪为椭圆或圆形区域将产生与裁剪为正方形相同的结果。我假设您还想遮盖图像和裁剪?

为此,请创建一个与原始大小相同的空白蒙版 PIL 图像,用于PIL.ImageDraw.Draw在图像上绘制多边形。蒙版图像现在应该具有二进制像素值,其中“1”表示蒙版。然后简单地将原始图像中的所有值设置为掩码值(即 np.nan),其中掩码像素值等于 1(例如original_image[mask == 1] = np.nan)。


推荐阅读