测试的版本是:lufficc/SSD
从readme.md中得知执行脚本:
python demo.py --config-file configs/vgg_ssd300_voc0712.yaml --images_dir demo --ckpt https://github.com/lufficc/SSD/releases/download/1.2/vgg_ssd300_voc0712.pth
运行结果存放在“demo/output”目录下。
检测结果如下:
此处要说明的是加载如向后的transform是在哪里配置的:
ssd/data/transforms/__init__.py
具体代码:
def build_transforms(cfg, is_train=True):
if is_train:
transform = [
ConvertFromInts(),
PhotometricDistort(),
Expand(cfg.INPUT.PIXEL_MEAN),
RandomSampleCrop(),
RandomMirror(),
ToPercentCoords(),
Resize(cfg.INPUT.IMAGE_SIZE),
SubtractMeans(cfg.INPUT.PIXEL_MEAN),
ToTensor(),
]
else:
transform = [
Resize(cfg.INPUT.IMAGE_SIZE),
SubtractMeans(cfg.INPUT.PIXEL_MEAN),
ToTensor()
]
transform = Compose(transform)
return transform
可见推理前图像做了resize、SubtractMean、Totensor三个操作。
具体参数是在下面的文件中配置的。
ssd/config/defaults.py
配置参数:
# -----------------------------------------------------------------------------
# INPUT
# -----------------------------------------------------------------------------
_C.INPUT = CN()
# Image size
_C.INPUT.IMAGE_SIZE = 300
# Values to be used for image normalization, RGB layout
_C.INPUT.PIXEL_MEAN = [123, 117, 104]