如何绘制边缘粗糙的矩形

时间:2018-03-12 01:43:01

标签: python-3.x python-imaging-library

我使用Imagedraw模块绘制矩形,这非常简单:

blank=Image.new("RGB",[pixelx,pixely],"black:")
draw=ImageDraw.Draw(blank)
draw.rectangle(x1,y1,x2,y2,fill='white')

这给了我一个白色的直线矩形。

但我可以改变这个矩形边缘的粗糙度吗?

我试图让矩形看起来更像实用图像。

如果我无法通过Imagedraw实现这一点,那么什么模块可以帮助我做到这一点。

非常感谢!

1 个答案:

答案 0 :(得分:0)

很难确切地知道自己的效果。

我可以告诉您枕头具有过滤器-https://pillow.readthedocs.io/en/5.2.x/reference/ImageFilter.html

from PIL import ImageFilter
im = im.filter(ImageFilter.BLUR)

通过选择非平坦矩形的坐标来更改矩形的角度会创建像素化的边缘。

否则,我建议使用https://pillow.readthedocs.io/en/5.2.x/reference/PixelAccess.html

沿边缘随机更改单个像素
from PIL import Image
px = im.load()
px[0, 0] = (0, 0, 0)

尽管那可能很慢。这取决于图像的大小和对速度的需求。