Image processing 有没有办法提高子图像搜索性能
我有一个1600x1600px的大图像和一个50x50px的小图像。运行测试大约需要3分钟20秒。小图像预计仅出现在50 x 500px区域内的大图像内 我试过这个,但不起作用:Image processing 有没有办法提高子图像搜索性能,image-processing,imagemagick,image-recognition,Image Processing,Imagemagick,Image Recognition,我有一个1600x1600px的大图像和一个50x50px的小图像。运行测试大约需要3分钟20秒。小图像预计仅出现在50 x 500px区域内的大图像内 我试过这个,但不起作用: compare-metric mse-subimage search“big.png[50x500+0+118]”small.png“null: 让我们把放大.gif: convert -size 1600x1600 xc:yellow -fill black -draw "rectangle 5,130 14,139
compare-metric mse-subimage search“big.png[50x500+0+118]”small.png“null:
让我们把放大.gif
:
convert -size 1600x1600 xc:yellow -fill black -draw "rectangle 5,130 14,139" big.gif
和small.gif
convert -size 10x10 xc:black small.gif
现在让我们看一下裁剪的搜索区域:
convert big.gif -crop 50x500+0+118 x.gif
因此,您需要的命令是:
convert big.gif -crop 50x500+0+118 +repage miff:- | compare -metric mse -subimage-search miff:- small.gif null:
0 (0) @ 5,12
这将搜索时间从91秒减少到0.7秒
如果您真正的问题更难、更大或更紧迫,您可以将图像分割为两部分,并平行进行两半-记住按所需子图像的大小重叠两半:
convert big.gif -crop 50x260+0+118 +repage miff:- | compare -metric mse -subimage-search miff:- small.gif null: &
convert big.gif -crop 50x260+0+368 +repage miff:- | compare -metric mse -subimage-search miff:- small.gif null: &
wait
现在需要0.4秒:-)