|
#!/bin/bash |
|
|
|
|
|
real_video_root='dataset/VoxCeleb2/vox2_test_mp4/mp4/' |
|
model_path="checkpoints/checkpoint.pt" |
|
sample_path="output_dir" |
|
sample_mode="cross" |
|
NUM_GPUS=2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
filelist_recon='dataset/filelists/voxceleb2_test_n_5000_reconstruction_5k.txt' |
|
filelist_cross='dataset/filelists/voxceleb2_test_n_5000_seed_797_cross_5K.txt' |
|
if [ "$sample_mode" = "reconstruction" ]; then |
|
sample_input_flags="--sampling_input_type=first_frame --sampling_ref_type=first_frame" |
|
filelist=$filelist_recon |
|
elif [ "$sample_mode" = "cross" ]; then |
|
sample_input_flags="--sampling_input_type=gt --sampling_ref_type=gt" |
|
filelist=$filelist_cross |
|
else |
|
echo "Error: sample_mode can only be \"cross\" or \"reconstruction\"" |
|
exit 0 |
|
fi |
|
test_video_dir=$real_video_root |
|
mkdir -p $sample_path |
|
MODEL_FLAGS="--attention_resolutions 32,16,8 --class_cond False --learn_sigma True --num_channels 128 --num_head_channels 64 --num_res_blocks 2 --resblock_updown True --use_fp16 True --use_scale_shift_norm False" |
|
DIFFUSION_FLAGS="--predict_xstart False --diffusion_steps 1000 --noise_schedule linear --rescale_timesteps False" |
|
SAMPLE_FLAGS="--sampling_seed=7 $sample_input_flags --timestep_respacing ddim25 --use_ddim True --model_path=$model_path --sample_path=$sample_path" |
|
DATA_FLAGS="--nframes 5 --nrefer 1 --image_size 128 --sampling_batch_size=32 " |
|
TFG_FLAGS="--face_hide_percentage 0.5 --use_ref=True --use_audio=True --audio_as_style=True" |
|
GEN_FLAGS="--generate_from_filelist 1 --test_video_dir=$test_video_dir --filelist=$filelist --save_orig=False --face_det_batch_size 64 --pads 0,0,0,0" |
|
|
|
if [ "$NUM_GPUS" -gt 1 ]; then |
|
mpiexec -n $NUM_GPUS python generate_dist.py $MODEL_FLAGS $DIFFUSION_FLAGS $SAMPLE_FLAGS $DATA_FLAGS $TFG_FLAGS $GEN_FLAGS |
|
else |
|
python generate.py $MODEL_FLAGS $DIFFUSION_FLAGS $SAMPLE_FLAGS $DATA_FLAGS $TFG_FLAGS $GEN_FLAGS |
|
fi |
|
|