Open leonardoaraujosantos opened 7 years ago
Couple of points that are not correct.
In AnnotatedDataLayer, default box is not used. Only GroundTruth boxes are used to do data augmentation.
Extra conv layers are useful for detecting bigger objects (not smaller).
PriorBox is not cropped anymore (for the part outside of image).
Thanks @weiliu89!
So the AnnotatedDataLayer will not do the match between the GroundTruth and the default boxes? And if not where is this merge (Using the Jaccard overlap) done?
Thanks again for the support
The match is done in the MultiBoxLossLayer.
Thanks a lot @weiliu89 I think the confusion was this:
The Jaccard overlap is used to make the ground truth position be transformed to something more compatible with the default boxes, so I follow everyone who call the JaccardOverlap function:
Then on the paper page on page 5 we have the following
Matching strategy During training we need to determine which default boxes correspond to a ground truth detection and train the network accordingly. For each ground truth box we are selecting from default boxes that vary over location, aspect ratio, and scale. We begin by matching each ground truth box to the default box with the best jaccard overlap
As the AnnotatedDataLayer is used during training I suposed that this layer was responsible to do the Matching strategy between Ground Truth and default boxes.
AnnotatedDataLayer is used to load image, do data augmentation, and apply image transformation. It uses ground truth boxes to help guiding the sampling process. GenerateSamples generates random regions (not default boxes) within an image.
Thanks for the explanation @weiliu89, so which layer or each part of the code is responsible for this action described on the text mentioned on the paper: (Matching images on G.T using Jaccard overlay)
Matching strategy During training we need to determine which default boxes correspond to a ground truth detection and train the network accordingly. For each ground truth box we are selecting from default boxes that vary over location, aspect ratio, and scale. We begin by matching each ground truth box to the default box with the best jaccard overlap
Thanks again, I'm updating the diagrams and attach the explanations soon!
MultiBoxLossLayer. There is a function called FindMatching.
Introduction
Hi @weiliu89 thanks again for the support, could you confirm my findings from what I learn about SSD so far?
Training phase
Extra CONVS
Basically this block will learn how to better scale down the features from the end of VGG_16. This will be usefull do to detection of small objects on the image.
Detection part layer
This layer has as input the feature map sampled from the middle of VGG and from the CONV3x3 activation map of the extra layers It's composed with the following elements:
Prediction Phase
On prediction phase the main difference is that the merged (Location, Confidences, default boxes) will be feed to the Detection Output layer that basically will decide which which boxes detect better the objects found.