|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面这个去白边程序去的太干净了,能否加1句保留x个白边像素的语句
from PIL import Image, ImageChops
im = Image.open("./1.jpg")
def trim(im):
bg = Image.new(im.mode, im.size, im.getpixel((0,0)))
diff = ImageChops.difference(im, bg)
diff = ImageChops.add(diff, diff, 2.0, -100)
bbox = diff.getbbox()
if bbox:
return im.crop(bbox)
trim(im).show()
可以在程序中加入保留x个白边像素的语句,具体实现方法如下:
from PIL import Image, ImageChops
im = Image.open("./1.jpg")
def trim(im, x):
bg = Image.new(im.mode, im.size, im.getpixel((0,0)))
diff = ImageChops.difference(im, bg)
diff = ImageChops.add(diff, diff, 2.0, -100)
bbox = diff.getbbox()
if bbox:
# 增加保留x个白边像素的语句
bbox = (bbox[0]-x, bbox[1]-x, bbox[2]+x, bbox[3]+x)
return im.crop(bbox)
trim(im, 10).show()
在原有的程序基础上,增加了一个参数x,表示保留x个白边像素。在获取bbox后,将其扩大x个像素的范围,然后再进行裁剪操作。这样就可以保留一定数量的白边像素。
|
|