最近有遇到超大图像处理的需求,图片都是上亿级的,这么大的图像本身就会占用很大内存,一般加载这关都过不了,即使加载成功,图像处理也会耗费很长时间。有没有一种很好的办法解决掉上述问题呢?
我想到的办法就是把图像分成很多块,再对每个块做相应的图像处理,最后用算法把所有块的结果结合到一起,使其输出的结果与对单张图片的处理结果无异,这样既能运用并行计算节省时间,也能保证结果的输出。
下面的图示是对两张超大图片的处理,第一张图片将近一亿像素,第二张图片将近四亿像素,目的是提取出所有轮廓,要求是亚像素级的。