## MeViS ### Inference & Evaluation To perform inference using the trained model, use the following command: ``` sbatch [inference script file] [/path/to/output_dir] [/path/to/pretrained_weight] --backbone [backbone] --batch_size [batchsize: 1 is desirable] --frame_batch_size [frame batch size] ``` For example, to run inference with the Swin-Tiny model, execute: ``` sbatch ./script/dist_test_mevis_swint.sh mevis_dirs/swin_tiny_mevis pretrained_weights/swin-tiny_pretrain.pth --backbone swin_t_p4w7 --visualize --batch_size 1 --frame_batch_size 64 ``` If you would like to visualize the predicted masks, you can add the `--visualize` flag to the command above. ### Training - **Finetuning** The following command includes both training and inference stages: ``` sbatch [train script file] [/path/to/output_dir] [/path/to/pretrained_weight] --backbone [backbone] ``` For example, to train the Swin-Tiny model, run: ``` sbatch ./scripts/dist_train_mevis.sh mevis_dirs/swin_tiny_mevis pretrained_weights/swin-tiny_pretrain.pth --backbone swin_t_p4w7 ``` The training script is based on `torch.distributed.launch` with SLURM's GPU allocation. Modify the `--nproc_per_node` option according to the number of GPUs allocated on the node, as shown below: ``` python3 -m torch.distributed.launch --nproc_per_node=4 --use_env \ main.py --with_box_refine --binary --freeze_text_encoder \ ```