use*_*643 5 python python-imaging-library
任何想法如何使用Python与PIL模块缩小选择所有?我知道这可以用Gimp实现.我正在尝试尽可能小地打包我的应用程序,GIMP安装不是欧盟的选项.
假设您有2张图片,一张是400x500,另一张是200x100.它们都是白色的,在每个图像的边界内某处有一个100x100的文本块.我要做的是自动剥离该文本周围的空白,将该100x100图像文本块加载到变量中以进行进一步的文本提取.
显然不是这么简单,所以只在整个图像上运行文本提取是行不通的!我只想查询基本过程.关于此主题,Google上没有太多可用内容.如果解决了,也许它可以帮助其他人......
谢谢阅读!
如果将图像放入numpy
数组中,则可以轻松找到可以使用PIL进行裁剪的边.在这里我假设空白是颜色(255,255,255)
,你可以根据自己的需要进行调整:
from PIL import Image
import numpy as np
im = Image.open("test.png")
pix = np.asarray(im)
pix = pix[:,:,0:3] # Drop the alpha channel
idx = np.where(pix-255)[0:2] # Drop the color when finding edges
box = map(min,idx)[::-1] + map(max,idx)[::-1]
region = im.crop(box)
region_pix = np.asarray(region)
Run Code Online (Sandbox Code Playgroud)
为了显示结果的样子,我将轴标签留在上面,以便您可以看到box
区域的大小:
from pylab import *
subplot(121)
imshow(pix)
subplot(122)
imshow(region_pix)
show()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3204 次 |
最近记录: |