szq0214/DSOD

Question about pooling layer in your DSOD300

zjuzuhe opened this issue · 1 comments

Thx for your sharing code.And I want to make a re-implementation of this net with other framwork.But the definition of pooling layer is different from which in caffe.

In caffe,I think the funtion of size of output is a ceil function as shown in most of your code.But in the final,I don't know why it become a floor function.

I mean that the process should be

300x300→150x150→75x75→38x38→19x19→10x10→5x5→3x3→2x2

But in your code,

model2 = add_bl_layer2(model1, 256, dropout, 1) # pooling4: 10x10
net.Third = model2
model3 = add_bl_layer2(model2, 128, dropout, 1) # pooling5: 5x5
net.Fourth = model3
model4 = add_bl_layer2(model3, 128, dropout, 1) # pooling6: 3x3
net.Fifth = model4
model5 = add_bl_layer2(model4, 128, dropout, 1) # pooling7: 1x1

I don't know why 3x3→1x1.Could you give me some suggestion?

Hi @zjuzuhe, you are right. The last resolution should be 2x2. Thanks for pointing out this! I will correct it soon.