add docs for inference
This commit is contained in:
@@ -92,7 +92,18 @@ SMPLer-X/
|
||||
│ └──SMPLX_FEMALE.npz
|
||||
├── data/
|
||||
├── main/
|
||||
├── pretrained_models/ # pretrained ViT-Pose models
|
||||
├── demo/
|
||||
│ ├── videos/
|
||||
│ ├── images/
|
||||
│ └── results/
|
||||
├── pretrained_models/ # pretrained ViT-Pose, SMPLer_X and mmdet models
|
||||
│ ├── mmdet/
|
||||
│ │ ├──faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth
|
||||
│ │ └──mmdet_faster_rcnn_r50_fpn_coco.py
|
||||
│ ├── smpler_x_s32.pth.tar
|
||||
│ ├── smpler_x_b32.pth.tar
|
||||
│ ├── smpler_x_l32.pth.tar
|
||||
│ ├── smpler_x_h32.pth.tar
|
||||
│ ├── vitpose_small.pth
|
||||
│ ├── vitpose_base.pth
|
||||
│ ├── vitpose_large.pth
|
||||
@@ -131,6 +142,21 @@ SMPLer-X/
|
||||
├── UP3D/
|
||||
└── preprocessed_datasets/ # HumanData files
|
||||
```
|
||||
## Inference
|
||||
- Place the video to be inferenced under ROOT/demo/videos
|
||||
- Prepare the pretrained models to be used for inference under ROOT/pretrained_models
|
||||
- Prepare the mmdet pretrained model and config under ROOT/pretrained_models
|
||||
- Inference out put will be placed in ROOT/demo/results
|
||||
|
||||
```bash
|
||||
cd main
|
||||
sh slurm_inference.sh {VIDEO_FILE} {FORMAT} {FPS} {PRETRAINED_CKPT}
|
||||
|
||||
# For inferencing test_video.mp4 (24FPS) with smpler_x_h32
|
||||
sh slurm_inference.sh test_video mp4 24 smpler_x_h32
|
||||
|
||||
```
|
||||
|
||||
|
||||
## Training
|
||||
```bash
|
||||
@@ -155,6 +181,7 @@ sh slurm_test.sh {JOB_NAME} {NUM_GPU} {TRAIN_OUTPUT_DIR} {CKPT_ID}
|
||||
- NUM_GPU = 1 is recommended for testing
|
||||
- Logs and results will be saved to `../output/test_{JOB_NAME}_ep{CKPT_ID}_{TEST_DATSET}`
|
||||
|
||||
|
||||
## References
|
||||
- [Hand4Whole](https://github.com/mks0601/Hand4Whole_RELEASE)
|
||||
- [OSX](https://github.com/IDEA-Research/OSX)
|
||||
|
||||
+3
-4
@@ -21,8 +21,7 @@ def parse_args():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--num_gpus', type=int, dest='num_gpus')
|
||||
parser.add_argument('--exp_name', type=str, default='output/test')
|
||||
parser.add_argument('--result_path', type=str, default='output/test')
|
||||
parser.add_argument('--ckpt_idx', type=int, default=0)
|
||||
parser.add_argument('--pretrained_model', type=int, default=0)
|
||||
parser.add_argument('--testset', type=str, default='EHF')
|
||||
parser.add_argument('--agora_benchmark', type=str, default='na')
|
||||
parser.add_argument('--img_path', type=str, default='input.png')
|
||||
@@ -43,8 +42,8 @@ def parse_args():
|
||||
def main():
|
||||
|
||||
args = parse_args()
|
||||
config_path = osp.join('../output',args.result_path, 'code', 'config_base.py')
|
||||
ckpt_path = osp.join('../output', args.result_path, 'model_dump', f'snapshot_{int(args.ckpt_idx)}.pth.tar')
|
||||
config_path = osp.join('./config', f'config_{args.pretrained_model}.py')
|
||||
ckpt_path = osp.join('../pretrained_models', f'{args.pretrained_model}.pth.tar')
|
||||
|
||||
cfg.get_config_fromfile(config_path)
|
||||
cfg.update_test_config(args.testset, args.agora_benchmark, shapy_eval_split=None,
|
||||
|
||||
@@ -4,10 +4,10 @@ set -x
|
||||
PARTITION=Zoetrope
|
||||
|
||||
INPUT_VIDEO=$1
|
||||
APPENDIX=$2
|
||||
FORMAT=$2
|
||||
FPS=$3
|
||||
RES_PATH=$4
|
||||
CKPT=$5
|
||||
CKPT=$4
|
||||
|
||||
GPUS=1
|
||||
JOB_NAME=inference_${INPUT_VIDEO}
|
||||
|
||||
@@ -21,7 +21,7 @@ SAVE_DIR=../demo/results/${INPUT_VIDEO}
|
||||
# video to images
|
||||
mkdir $IMG_PATH
|
||||
mkdir $SAVE_DIR
|
||||
ffmpeg -i ../demo/videos/${INPUT_VIDEO}.${APPENDIX} -f image2 -vf fps=${FPS}/1 -qscale 0 ../demo/images/${INPUT_VIDEO}/%06d.jpg
|
||||
ffmpeg -i ../demo/videos/${INPUT_VIDEO}.${FORMAT} -f image2 -vf fps=${FPS}/1 -qscale 0 ../demo/images/${INPUT_VIDEO}/%06d.jpg
|
||||
|
||||
end_count=$(find "$IMG_PATH" -type f | wc -l)
|
||||
echo $end_count
|
||||
@@ -39,8 +39,7 @@ srun -p ${PARTITION} \
|
||||
python inference.py \
|
||||
--num_gpus ${GPUS_PER_NODE} \
|
||||
--exp_name output/demo_${JOB_NAME} \
|
||||
--result_path ${RES_PATH} \
|
||||
--ckpt_idx ${CKPT} \
|
||||
--pretrained_model ${CKPT} \
|
||||
--agora_benchmark agora_model \
|
||||
--img_path ${IMG_PATH} \
|
||||
--start 1 \
|
||||
|
||||
Reference in New Issue
Block a user