So I have am trying to implement SSD and have various anchor sizes as defined below.
SSD_ANCHOR_SIZE = [[0.03, 0.1], [0.04, 0.1], [0.05, 0.1], [0.06, 0.1], [0.07, 0.1], [0.08, 0.1], [0.085, 0.1], [0.09, 0.1],
[0.095, 0.1], [0.1, 0.1], [0.11, 0.1], [0.12, 0.1], [0.13, 0.1], [0.14, 0.1], [0.15, 0.1]]
SSD_ANCHOR_RATIO = [[1, 1.1, 1.2], [1, 1.5, 1.75, 2], [1, 2.5, 3],[1, 3.5, 4, 4.5], [1, 4.5, 5, 5.5, 6], [1, 6.5, 7, 8],
[1, 7, 7.5, 8], [1, 8, 9], [1, 8, 8.5, 9], [1, 9, 9.5, 10], [1, 10, 10.5, 11, 12],
[1, 10, 11, 12, 13, 14], [1, 12 ,13, 14, 15, 16, 17], [1, 16, 17, 18, 19], [1, 17, 17.5, 18, 19]]
Specification of boxes generated by these anchor size and ratio is that either proposed boxes are square or proposed boxes should have height ranging from 45 px to 55px and width ranging from 50px to 1000px ranged at about 20px each on image size of 1650x1650px.
So in summary, bounding boxes proposed my MultiboxPrior function of Gloun would generate bounding boxes that mimics a line (horizontal rectangle). This rectangle would have size as described above.
But when I train the network and use MultiboxTarget function and visualize the bounding boxes, I do not get any bounding boxes that are or horizontal orientation or square. I get all bounding boxes that are of vertical orientation.
So the question is how is this possible. Because my anchor size and ratio allows for bounding box to be either horizontal rectangle or a perfect square. Am I missing something? Does SSD work differently?