我有一些python代码,它接收A4字母的图像,然后在每个字符周围绘制边界框。
我想知道如何将每个边界框保存为图像,所以基本上它会检测并保存每个边界。 最好将.png调整为20x20
(类似的问题被问到here,但答案很模糊,不知道如何在我的代码中实现它
这是我的代码:
conda install -c https://conda.binstar.org/menpo opencv
如果我不够清楚,请发表评论,我会尽力说明,
谢谢
答案 0 :(得分:3)
您引用的问题使用OpenCV中的findContours,这是一个用于图像处理的常用库。 如果你已经有了边界框(x,y和宽度,高度),你可以使用matplotlib或者opencv导出:
image_patch = img[minr:maxr, minc:maxc] # get region of interest (slice)
# .. maybe do some scaling
plt.imsave("filename.png", image_patch)
或者使用fig.savefig(路径)将其渲染为图形后。 或者使用opencv:
import cv2
cv2.imsave("path.png", img_patch)
您可能希望在文件名中添加后缀(和/或检查文件是否已存在?)以避免覆盖。