裁剪图像页脚并获得原始位置
Crop image footer and get original position
我需要裁剪图像以便仅获取页脚信息。有了这些信息,我得到了找到的文本的位置(使用 pytesseract),但只有页脚图像。所以当我处理完整图像时,我需要更新位置。现在这是我所拥有的:
剪裁图片:
from wand.image import Image as Img
from wand.color import Color
with Img(filename=img, resolution=300) as pic:
pic.compression_quality = 100
pic.background_color = Color("white")
pic.alpha_channel = 'remove'
heightRatio = int(pic.height / 3 + pic.height * 0.1)
pic.crop(0, int(pic.height - heightRatio), pic.width, pic.height)
pic.save(filename=jpgName)
在那之后,我的文字位置像 {0: {x1,y1}, 1: {x2,y2}}
并且我有以下代码来尝试获得像我没有裁剪图像一样的位置:
position[0][0] = line.position[0][0]
position[1][0] = line.position[1][0]
position[0][1] = line.position[0][1] + heightRatio
position[1][1] = line.position[1][1] + heightRatio
但是当我在完整图像上显示位置时,它根本不适合..
有什么想法吗?
提前致谢
我终于找到了答案:裁剪功能是问题所在。使用此参数更好:
pic.crop(width=pic.width, height=int(pic.height - self.heightRatio), gravity='south')
我需要裁剪图像以便仅获取页脚信息。有了这些信息,我得到了找到的文本的位置(使用 pytesseract),但只有页脚图像。所以当我处理完整图像时,我需要更新位置。现在这是我所拥有的:
剪裁图片:
from wand.image import Image as Img
from wand.color import Color
with Img(filename=img, resolution=300) as pic:
pic.compression_quality = 100
pic.background_color = Color("white")
pic.alpha_channel = 'remove'
heightRatio = int(pic.height / 3 + pic.height * 0.1)
pic.crop(0, int(pic.height - heightRatio), pic.width, pic.height)
pic.save(filename=jpgName)
在那之后,我的文字位置像 {0: {x1,y1}, 1: {x2,y2}}
并且我有以下代码来尝试获得像我没有裁剪图像一样的位置:
position[0][0] = line.position[0][0]
position[1][0] = line.position[1][0]
position[0][1] = line.position[0][1] + heightRatio
position[1][1] = line.position[1][1] + heightRatio
但是当我在完整图像上显示位置时,它根本不适合..
有什么想法吗?
提前致谢
我终于找到了答案:裁剪功能是问题所在。使用此参数更好:
pic.crop(width=pic.width, height=int(pic.height - self.heightRatio), gravity='south')