Closed Magicboomliu closed 2 years ago
Hi, @Magicboomliu
- Seems That you own do tile initialzation at the highest resolution and do propagation. In the original paper, the author do tile initialization at all 1/4-1/2 resolution. So that in the propagation update stage, you only have 1(n=1) tile hyp at each location, the original paper should have two(one from initialization at current scale, one from lowwer scale upsampled).
- I am not sure, the original paper finally use three propagation module to recover the resolution, If I am right, in your code, you use the Refinement Module from stereonet , A simple dilation resblocks instead of Propagation Module to refine and increase the scale. Why you do not use the propagation manner? Did I hard to train or something else?
please check supplementary material 3. Model Architecture Details
for more details.
BTW, our implementation has exactly the same network structure as the original implementation. so we can convert original HITNet-XL weights to pytorch and achieve 0.3762 EPE on sceneflow. we also trained HITNet from scratch on sceneflow and achieve 0.5486 EPE.
Thank you very much again for providing the supplementary material and carefull instructions!! I will check it out. It is really helpful!
BTW, in sceneflow training phase, how many epochs you train to achieve 0.5486EPE ?
Because, I am little concerned about, if the epoch nums is big, maybe overfit at Kitti2012@2015. Other SOTA, like CSPN
,PWCNet
training with batch_size =8 smaller than 70 epochs.
Thank you very much again for providing the supplementary material and carefull instructions!! I will check it out. It is really helpful! BTW, in sceneflow training phase, how many epochs you train to achieve 0.5486EPE ? Because, I am little concerned about, if the epoch nums is big, maybe overfit at Kitti2012@2015. Other SOTA, like CSPN,PWCNet training with batch_size =8 smaller than 70 epochs.
We follow the training configuration described in the supplementary material 1.1 Training Setup
:
We trained for 1.42M iterations using the Adam optimizer, starting from a learning rate of 4e-4, dropping it to 1e-4, then to 4e-5, then to 1e-5 after 1M, 1.3M, 1.4M iterations respectively.
OK, great!. Thank you . So according to the file and you training script in this repo. I do a little calculation. 1.42M iteration, batch_size =8, Since Sceneflow is 35K samples. so the epoch nums is 1420000/(35400/8) ~~=320 epochs. From my experience, using 2 NVIDIA 2080Ti with batch size=8, 1epoch takes almost 1 hour . So 320 epochs means it takes almost 10 days to train? AM I correct or get some wrong? lol
OK, great!. Thank you . So according to the file and you training script in this repo. I do a little calculation. 1.42M iteration, batch_size =8, Since Sceneflow is 35K samples. so the epoch nums is 1420000/(35400/8) ~~=320 epochs. From my experience, using 2 NVIDIA 2080Ti with batch size=8, 1epoch takes almost 1 hour . So 320 epochs means it takes almost 10 days to train? AM I correct or get some wrong? lol
Yes. we use 8 V100 GPUs. LOL
haha, OK, Fine. I got it. 👍
Thank your very much for your kindness instructions.
BTW, it is a great work, I am considering HItNet for a long time for research purpose, but the original repo only has the test model , other implementation just cannot work well. Your repo is really a great work.
Feel free to reopen if any question!
Firstly, Thanks for your great work.
I Check the code. And find that you really follow the orginal paper about the initailization and propagation. Here comes my inqures:
Refinement Module
fromstereonet
, A simple dilation resblocks instead of Propagation Module to refine and increase the scale. Why you do not use the propagation manner? Did I hard to train or something else?Finally, Thank you again for your great work. It will be very nice if you can answer my requires. Solute!