我有一个jpeg,称之为template.jpg,这是一张空白选票。我需要将其与成千上万的扫描选票进行比较,imagexxxx.jpg,以查看用户在表单上放置的任何标记,甚至是与目的无关的标记。
执行此操作的一种方法是在所有像素上嵌套循环,如下所示:
tmpl = Image.open('template.jpg')
tmpl = tmpl.convert(mode='1', dither=0)
im = Image.open('imagexxxx.jpg')
pxtmpl = tmpl.load()
pxim = im.load()
for i in range(tmpl.size[0]):
for j in range (tmpl.size[1]):
if pxtmpl[i,j] == 0:
pxim[i,j] = (255,255,255)
im.show()
然而,像素访问速度很慢。
毋庸置疑,我愿意花费几乎任何数量的CPU以最佳格式创建模板文件,以尽量减少每次投票的时间。
我一直希望能找到一些渠道操作或聪明地使用.point方法,但还没找到一个有效的方法吗?
有关如何以最少的每次选票处理时间完成此任务的任何建议?
(对于这个讨论,我忽略了在扫描中投票与投票模板错位的问题。)