版本要求
PaddlePaddle >= 2.0.2
Python >= 3.7+
由于图像抠图模型计算开销大,推荐在GPU版本的PaddlePaddle下使用。 推荐安装10.0以上的CUDA环境。安装教程请见PaddlePaddle官网。
git clone https://github.com/PaddlePaddle/PaddleSeg
cd PaddleSeg/Matting
pip install -r requirements.txt
下载模型库中的预训练模型并放置于pretrained_models目录下。这边以PP—MattingV2为例。
mkdir pretrained_models && cd pretrained_models
wget https://paddleseg.bj.bcebos.com/matting/models/ppmattingv2-stdc1-human_512.pdparams
cd ..
export CUDA_VISIBLE_DEVICES=0
python tools/predict.py \
--config configs/ppmattingv2/ppmattingv2-stdc1-human_512.yml \
--model_path pretrained_models/ppmattingv2-stdc1-human_512.pdparams \
--image_path demo/human.jpg \
--save_dir ./output/results \
--fg_estimate True
预测结果如下:
注意: --config
需要与--model_path
匹配。
export CUDA_VISIBLE_DEVICES=0
python tools/bg_replace.py \
--config configs/ppmattingv2/ppmattingv2-stdc1-human_512.yml \
--model_path pretrained_models/ppmattingv2-stdc1-human_512.pdparams \
--image_path demo/human.jpg \
--background 'g' \
--save_dir ./output/results \
--fg_estimate True
背景替换效果如下:
注意:
--image_path
必须是一张图片的具体路径。--config
需要与--model_path
匹配。--background
可以传入背景图片路径,或选择('r','g','b','w')中的一种,代表红,绿,蓝,白背景, 若不提供则采用绿色作为背景。运行如下命令进行视频预测,切记通过--video_path
传入待预测视频
export CUDA_VISIBLE_DEVICES=0
python tools/predict_video.py \
--config configs/ppmattingv2/ppmattingv2-stdc1-human_512.yml \
--model_path pretrained_models/ppmattingv2-stdc1-human_512.pdparams \
--video_path path/to/video \
--save_dir ./output/results \
--fg_estimate True
预测结果如下:
运行如下命令进行视频预测,切记通过--video_path
传入待背景替换视频
export CUDA_VISIBLE_DEVICES=0
python tools/bg_replace_video.py \
--config configs/ppmattingv2/ppmattingv2-stdc1-human_512.yml \
--model_path pretrained_models/ppmattingv2-stdc1-human_512.pdparams \
--video_path path/to/video \
--background 'g' \
--save_dir ./output/results \
--fg_estimate True
背景替换效果如下:
注意:
--background
可以传入背景图片路径,或背景视频路径,或选择('r','g','b','w')中的一种,代表红,绿,蓝,白背景, 若不提供则采用绿色作为背景。