As you stated in the paper and codes, the training images should be resized to a special size, typically a square, would this leads to the distortion of images if the original image is quite different between the height and the width? And would this leads to failure of the algorithm?
I won't say failure, but it would probably lead to suboptimal results. For example, if you naively warp kitti images to 300x300, it would probably 'squeeze' the objects too much. The network should still learn something, but probably cannot achieve the best results it should have. There are in generally two solutions to it:
@weiliu89 How to find about the information of 'P.Resize.WARP' ? I want to change this resize option. And are there any resize mode param of train_tranform_param?
The resize mode is defined at here: https://github.com/weiliu89/caffe/blob/ssd/src/caffe/proto/caffe.proto#L576-L581
Thanks Wei :+1:
@weiliu89 I'm getting completely degenerate bounding boxes after training with ssd_pascal_resnet.py on 480x640 KITTI images (cropped). E.g. https://imgur.com/a/YAXeh as detection output with confidence >= 0.99999 even after the loss seems to get to some pretty reasonable amounts. The bounding boxes are all very skinny -- e.g. 0.178 -0.229 0.178
1.09399998 as coordinates. Any idea?
Edit: I changed the image resize to 480x640 but left the min_dim as 300.
Most helpful comment
I won't say failure, but it would probably lead to suboptimal results. For example, if you naively warp kitti images to 300x300, it would probably 'squeeze' the objects too much. The network should still learn something, but probably cannot achieve the best results it should have. There are in generally two solutions to it: