Python 图像处理:计算 PNG 非透明区域最小外接矩形

使用 pillow 计算

依赖库

from PIL import Image, ImageDraw
import numpy as np

核心代码

def edge(img):
    np_data = np.array(img)
    rr = np.where(np_data[:, :, 3] != 0)
    xmin = min(rr[1])
    ymin = min(rr[0])
    xmax = max(rr[1])
    ymax = max(rr[0])
    return xmin, ymin, xmax, ymax

测试代码

img = Image.open('/Users/admin/Downloads/anoyi.png')
img = img.convert('RGBA')
img_edge = edge(img)
draw = ImageDraw.Draw(img)
draw.rectangle(img_edge, outline="red")
img.show()
Python 图像处理:计算 PNG 非透明区域最小外接矩形_第1张图片
最小外接矩形

你可能感兴趣的:(Python 图像处理:计算 PNG 非透明区域最小外接矩形)