naver/croco

Question about .pth file setting

Closed this issue · 7 comments

Hello, many thanks for your interesting paper.

May I ask you about the settings under which these two checkpoint files:
stereoflow_models/crocostereo_subtrain_vitb_smalldecoder.pth, stereoflow_models/crocostereo_subtrain_vitb_basedecoder.pth were trained?
I'm curious about the number of epochs, the dataset used, and whether there was a separate pretraining .pth file used when creating above .pth files.
Thank you.

Hi,

Both models have been trained with the following command

python -u stereoflow/train.py stereo --criterion "LaplacianLossBounded2()" --dataset "CREStereo('train')+SceneFlow('train_allpass')+30*ETH3DLowRes('train')+50*Md05('train')+50*Md06('train')+50*Md14('train')+50*Md21('train')+50*MdEval3('train_full')+Booster('train_balanced')" --val_dataset "SceneFlow('test1of100_finalpass')+SceneFlow('test1of100_cleanpass')+ETH3DLowRes('subval')+Md05('subval')+Md06('subval')+Md14('subval')+Md21('subval')+MdEval3('subval_full')+Booster('subval_balanced')" --lr 3e-5 --batch_size 6 --epochs 32 --pretrained pretrained_models/<pretrained_arch_model>.pth --output_dir <output_dir>

only the --pretrained argument differ and would be either CroCo_V2_ViTBase_SmallDecoder or CroCo_V2_ViTBase_BaseDecoder. Thus, yhe pretraining .pth file is indeed different as the architecture of the pre-training stage is also different. You can find other infos in the training command: 32 epochs on a mix of dataset (CREStereo, SceneFlow, ETH3D, Middleburys, Booster).
I hope this clarifies your questions.

Best
Philippe

thank you for your help!

Hello,

I have one little question about the measuring stage with the KITTI dataset.

I tried to measure the result of the experiment with the following command as you provided,

$python stereoflow/test.py --model stereoflow_models/crocostereo_finetune_kitti.pth --dataset "Kitti15('test')" --save submission --tile_overlap 0.9

and now I would like to measure the metric values of the result with the KITTI dataset.

When I try to use the command:
$python stereoflow/test.py --model stereoflow_models/crocostereo_finetune_kitti.pth --dataset "Kitti15('test')" --save metrics --tile_overlap 0.9

the error occurs with the following message:
assert gt.size(1)==1, gt.size()
AttributeError: 'NoneType' object has no attribute 'size'

May I ask you if there is some other way to measure the metric result?

Hi,

Internal "Metrics" computed in this codebase cannot be on the test set as the ground-truth is private. This is why it is failing. You would need to upload the file created with the option --save submission to the official server in case you want the official metrics on the test set.

Best
Philippe

Thank you for your quick response!

I now comprehend the reason behind receiving the error log.

But I'm a bit confused about the procedure for uploading the file, as mentioned in your response with the "-save submission" option, to the official server. Could you please provide a more detailed explanation of the steps involved in measuring the metrics?

I appreciate your help.

The submission file should be submitted to https://www.cvlibs.net/datasets/kitti/user_login.php in the "Stereo / Flow / Scene Flow 2015" track.
But these leaderboards are mainly for comparing final methods ; if you want to ablate something, it might be better to split the Kitti training into a train/val subsets.

Best
Philippe

thank you so much for your reply!!