在caffe ImageNet例子中有对图片进行resize的部分,文中使用的是linux shell脚本命令:
for name in /path/to/imagenet/val/*.JPEG; do
convert -resize 256x256\! $name $name
done
但该命令在运行后光标就一直处于等待状态,直到所有的图片全部运行结束。这种情况在图片数量比较大时就很恼人(对于ILSVRC2012数据集中的100多万张图片来说,这种状态可能会持续好几天),你不知道程序的运行状况,不知道处理了多少图片,不知道程序大概什么时候能结束。
因此,本文采用matlab语言中的并行机制来实现图片尺寸的批量resize。
代码如下:
clear;clc;close all;
tic; % 用于计算程序运行时间,和toc搭配使用
CoreNum=6; % cpu核的数量