gangweiX / IGEV

[CVPR 2023] Iterative Geometry Encoding Volume for Stereo Matching and Multi-View Stereo
MIT License
538 stars 66 forks source link

while trying to train on kitti dataset , I am getting error #11

Closed suriya030 closed 1 year ago

suriya030 commented 1 year ago

IGEV_Stereo) PS C:\Users\sreea\OneDrive\Desktop\IGEV-main\IGEV-Stereo> python train_stereo.py --restore_ckpt ./pretrained_models/sceneflow/sceneflow.pth --dataset kitti

usage: train_stereo.py [-h] [--name NAME] [--restore_ckpt RESTORE_CKPT] [--mixed_precision] [--batch_size BATCH_SIZE] [--train_datasets TRAIN_DATASETS [TRAIN_DATASETS ...]] [--lr LR] [--num_steps NUM_STEPS] [--image_size IMAGE_SIZE [IMAGE_SIZE ...]] [--train_iters TRAIN_ITERS] [--wdecay WDECAY] [--valid_iters VALID_ITERS] [--corr_implementation {reg,alt,reg_cuda,alt_cuda}] [--shared_backbone] [--corr_levels CORR_LEVELS] [--corr_radius CORR_RADIUS] [--n_downsample N_DOWNSAMPLE] [--slow_fast_gru] [--n_gru_layers N_GRU_LAYERS] [--hidden_dims HIDDEN_DIMS [HIDDEN_DIMS ...]] [--max_disp MAX_DISP] [--img_gamma IMG_GAMMA [IMG_GAMMA ...]] [--saturation_range SATURATION_RANGE [SATURATION_RANGE ...]] [--do_flip {h,v}] [--spatial_scale SPATIAL_SCALE [SPATIAL_SCALE ...]] [--noyjitter] train_stereo.py: error: unrecognized arguments: --dataset kitti

suriya030 commented 1 year ago

and also what does ' ── vkitti ' directory contain under the folders KITTI2012 and KITTI2015 ?

gangweiX commented 1 year ago

Maybe you can try --train_datasets kitti?

suriya030 commented 1 year ago

class KITTI(StereoDataset): def init(self, aug_params=None, root='/data/KITTI/KITTI_2015', image_set='training'): super(KITTI, self).init(aug_params, sparse=True, reader=frame_utils.readDispKITTI) assert os.path.exists(root)

    root_12 = '/data/KITTI/KITTI_2012'
    image1_list = sorted(glob(os.path.join(root_12, image_set, 'colored_0/*_10.png')))
    image2_list = sorted(glob(os.path.join(root_12, image_set, 'colored_1/*_10.png')))
    disp_list = sorted(glob(os.path.join(root_12, 'training', 'disp_occ/*_10.png'))) if image_set == 'training' else [osp.join(root, 'training/disp_occ/000085_10.png')]*len(image1_list)

    root_15 = '/data/KITTI/KITTI_2015'
    image1_list += sorted(glob(os.path.join(root_15, image_set, 'image_2/*_10.png')))
    image2_list += sorted(glob(os.path.join(root_15, image_set, 'image_3/*_10.png')))
    disp_list += sorted(glob(os.path.join(root_15, 'training', 'disp_occ_0/*_10.png'))) if image_set == 'training' else [osp.join(root, 'training/disp_occ_0/000085_10.png')]*len(image1_list)

    for idx, (img1, img2, disp) in enumerate(zip(image1_list, image2_list, disp_list)):
        self.image_list += [ [img1, img2] ]
        self.disparity_list += [ disp ]

where should I place my kitti dataset and second should i have to change the root address here ?

suriya030 commented 1 year ago

as i am getting this error when i run ,

(IGEV_Stereo) PS C:\Users\sreea\OneDrive\Desktop\IGEV-main\IGEV-Stereo> python train_stereo.py --restore_ckpt ./pretrained_models/sceneflow/sceneflow.pth --train_datasets kitti 2023-04-18 11:33:58,466 INFO [helpers.py:188] Loading pretrained weights from url (https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv2_100_ra-b33bc2c4.pth) Parameter Count: 12598114 2023-04-18 11:33:59,429 INFO [stereo_datasets.py:305] Adding 0 samples from KITTI Traceback (most recent call last): File "train_stereo.py", line 258, in train(args) File "train_stereo.py", line 139, in train train_loader = datasets.fetch_dataloader(args) File "C:\Users\sreea\OneDrive\Desktop\IGEV-main\IGEV-Stereo\core\stereo_datasets.py", line 308, in fetch_dataloader train_loader = data.DataLoader(train_dataset, batch_size=args.batch_size, File "C:\Users\sreea\anaconda3\envs\IGEV_Stereo\lib\site-packages\torch\utils\data\dataloader.py", line 347, in init sampler = RandomSampler(dataset, generator=generator) # type: ignore[arg-type] File "C:\Users\sreea\anaconda3\envs\IGEV_Stereo\lib\site-packages\torch\utils\data\sampler.py", line 107, in init raise ValueError("num_samples should be a positive integer " ValueError: num_samples should be a positive integer value, but got num_samples=0

ddacheng commented 1 year ago

class KITTI(StereoDataset): def init(self, aug_params=None, root='/data/KITTI/KITTI_2015', image_set='training'): super(KITTI, self).init(aug_params, sparse=True, reader=frame_utils.readDispKITTI) assert os.path.exists(root)

    root_12 = '/data/KITTI/KITTI_2012'
    image1_list = sorted(glob(os.path.join(root_12, image_set, 'colored_0/*_10.png')))
    image2_list = sorted(glob(os.path.join(root_12, image_set, 'colored_1/*_10.png')))
    disp_list = sorted(glob(os.path.join(root_12, 'training', 'disp_occ/*_10.png'))) if image_set == 'training' else [osp.join(root, 'training/disp_occ/000085_10.png')]*len(image1_list)

    root_15 = '/data/KITTI/KITTI_2015'
    image1_list += sorted(glob(os.path.join(root_15, image_set, 'image_2/*_10.png')))
    image2_list += sorted(glob(os.path.join(root_15, image_set, 'image_3/*_10.png')))
    disp_list += sorted(glob(os.path.join(root_15, 'training', 'disp_occ_0/*_10.png'))) if image_set == 'training' else [osp.join(root, 'training/disp_occ_0/000085_10.png')]*len(image1_list)

    for idx, (img1, img2, disp) in enumerate(zip(image1_list, image2_list, disp_list)):
        self.image_list += [ [img1, img2] ]
        self.disparity_list += [ disp ]

where should I place my kitti dataset and second should i have to change the root address here ?

you can try to set root='./data/KITTI/KITTI_2015'