├── .gitignore ├── LICENSE ├── LivePortrait ├── __init__.py ├── commons │ ├── __init__.py │ ├── config │ │ ├── __init__.py │ │ ├── base_config.py │ │ └── config.py │ ├── predictor.py │ └── utils │ │ ├── __init__.py │ │ ├── onnx_driver.py │ │ ├── tensorrt_driver.py │ │ └── utils.py ├── controlnet_sdxl_lightning │ ├── __init__.py │ ├── dwpose │ │ ├── __init__.py │ │ ├── download_model.py │ │ ├── onnx_det.py │ │ ├── onnx_pose.py │ │ ├── util.py │ │ └── wholebody.py │ ├── open_pose.py │ └── sdxl_lightning.py ├── face_analyze │ ├── __init__.py │ ├── face_analysis_cropper.py │ ├── modules │ │ ├── __init__.py │ │ ├── arc_face.py │ │ ├── face_analysis_diy.py │ │ ├── landmark.py │ │ ├── landmark_2d106.py │ │ └── scrfd.py │ └── utils │ │ ├── __init__.py │ │ ├── crop.py │ │ ├── face_alignment.py │ │ ├── face_dict.py │ │ ├── pickle_object.py │ │ └── transform.py ├── fast_live_portrait_pipeline.py └── live_portrait │ ├── __init__.py │ ├── portrait.py │ ├── portrait_output.py │ ├── resources │ └── mask_template.png │ ├── retarget_portrait.py │ └── transform_3d_point.py ├── README.md ├── colab └── Efficient_Live_Portrait_Tutorial.ipynb ├── experiment_examples ├── README_CONVERT.md ├── examples │ ├── driving │ │ ├── d0.mp4 │ │ ├── d1.mp4 │ │ ├── d2.mp4 │ │ ├── d3.mp4 │ │ ├── d5.mp4 │ │ ├── d6.mp4 │ │ ├── d7.mp4 │ │ ├── d8.mp4 │ │ ├── d9.mp4 │ │ └── test.mp4 │ └── source │ │ ├── 368220873_826368889022136_4472311944594836999_n.jpg │ │ ├── img.png │ │ ├── img_1.png │ │ ├── istockphoto-1325338752-612x612.jpg │ │ ├── s0.jpg │ │ ├── s1.jpg │ │ ├── s10.jpg │ │ ├── s2.jpg │ │ ├── s3.jpg │ │ ├── s4.jpg │ │ ├── s5.jpg │ │ ├── s6.jpg │ │ ├── s7.jpg │ │ ├── s8.jpg │ │ ├── s9.jpg │ │ └── tram.jpg ├── portrait2onnx │ ├── export_tensorrt.py │ ├── portrait2onnx.py │ ├── portrait2onnx_stiching.py │ ├── portrait2onnx_warping_models.py │ ├── quantization_model.py │ └── remove_shared_weights_onnx.py └── test_trt_inference.py ├── requirements-cpu.txt ├── requirements-gpu.txt ├── requirements-mps.txt └── run_live_portrait.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LICENSE -------------------------------------------------------------------------------- /LivePortrait/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/__init__.py -------------------------------------------------------------------------------- /LivePortrait/commons/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/__init__.py -------------------------------------------------------------------------------- /LivePortrait/commons/config/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/config/__init__.py -------------------------------------------------------------------------------- /LivePortrait/commons/config/base_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/config/base_config.py -------------------------------------------------------------------------------- /LivePortrait/commons/config/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/config/config.py -------------------------------------------------------------------------------- /LivePortrait/commons/predictor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/predictor.py -------------------------------------------------------------------------------- /LivePortrait/commons/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .utils import * -------------------------------------------------------------------------------- /LivePortrait/commons/utils/onnx_driver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/utils/onnx_driver.py -------------------------------------------------------------------------------- /LivePortrait/commons/utils/tensorrt_driver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/utils/tensorrt_driver.py -------------------------------------------------------------------------------- /LivePortrait/commons/utils/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/commons/utils/utils.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/__init__.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/dwpose/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/dwpose/__init__.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/dwpose/download_model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/dwpose/download_model.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/dwpose/onnx_det.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/dwpose/onnx_det.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/dwpose/onnx_pose.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/dwpose/onnx_pose.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/dwpose/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/dwpose/util.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/dwpose/wholebody.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/dwpose/wholebody.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/open_pose.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/open_pose.py -------------------------------------------------------------------------------- /LivePortrait/controlnet_sdxl_lightning/sdxl_lightning.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/controlnet_sdxl_lightning/sdxl_lightning.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/__init__.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/face_analysis_cropper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/face_analysis_cropper.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/modules/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/modules/__init__.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/modules/arc_face.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/modules/arc_face.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/modules/face_analysis_diy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/modules/face_analysis_diy.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/modules/landmark.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/modules/landmark.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/modules/landmark_2d106.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/modules/landmark_2d106.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/modules/scrfd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/modules/scrfd.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/utils/__init__.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/utils/crop.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/utils/crop.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/utils/face_alignment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/utils/face_alignment.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/utils/face_dict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/utils/face_dict.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/utils/pickle_object.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/utils/pickle_object.py -------------------------------------------------------------------------------- /LivePortrait/face_analyze/utils/transform.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/face_analyze/utils/transform.py -------------------------------------------------------------------------------- /LivePortrait/fast_live_portrait_pipeline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/fast_live_portrait_pipeline.py -------------------------------------------------------------------------------- /LivePortrait/live_portrait/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/live_portrait/__init__.py -------------------------------------------------------------------------------- /LivePortrait/live_portrait/portrait.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/live_portrait/portrait.py -------------------------------------------------------------------------------- /LivePortrait/live_portrait/portrait_output.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/live_portrait/portrait_output.py -------------------------------------------------------------------------------- /LivePortrait/live_portrait/resources/mask_template.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/live_portrait/resources/mask_template.png -------------------------------------------------------------------------------- /LivePortrait/live_portrait/retarget_portrait.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/live_portrait/retarget_portrait.py -------------------------------------------------------------------------------- /LivePortrait/live_portrait/transform_3d_point.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/LivePortrait/live_portrait/transform_3d_point.py -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/README.md -------------------------------------------------------------------------------- /colab/Efficient_Live_Portrait_Tutorial.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/colab/Efficient_Live_Portrait_Tutorial.ipynb -------------------------------------------------------------------------------- /experiment_examples/README_CONVERT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/README_CONVERT.md -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d0.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d0.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d1.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d1.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d2.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d2.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d3.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d3.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d5.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d5.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d6.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d6.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d7.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d7.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d8.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d8.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/d9.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/d9.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/driving/test.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/driving/test.mp4 -------------------------------------------------------------------------------- /experiment_examples/examples/source/368220873_826368889022136_4472311944594836999_n.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/368220873_826368889022136_4472311944594836999_n.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/img.png -------------------------------------------------------------------------------- /experiment_examples/examples/source/img_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/img_1.png -------------------------------------------------------------------------------- /experiment_examples/examples/source/istockphoto-1325338752-612x612.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/istockphoto-1325338752-612x612.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s0.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s1.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s10.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s2.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s3.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s4.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s5.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s6.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s7.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s8.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/s9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/s9.jpg -------------------------------------------------------------------------------- /experiment_examples/examples/source/tram.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/examples/source/tram.jpg -------------------------------------------------------------------------------- /experiment_examples/portrait2onnx/export_tensorrt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/portrait2onnx/export_tensorrt.py -------------------------------------------------------------------------------- /experiment_examples/portrait2onnx/portrait2onnx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/portrait2onnx/portrait2onnx.py -------------------------------------------------------------------------------- /experiment_examples/portrait2onnx/portrait2onnx_stiching.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/portrait2onnx/portrait2onnx_stiching.py -------------------------------------------------------------------------------- /experiment_examples/portrait2onnx/portrait2onnx_warping_models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/portrait2onnx/portrait2onnx_warping_models.py -------------------------------------------------------------------------------- /experiment_examples/portrait2onnx/quantization_model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/portrait2onnx/quantization_model.py -------------------------------------------------------------------------------- /experiment_examples/portrait2onnx/remove_shared_weights_onnx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/portrait2onnx/remove_shared_weights_onnx.py -------------------------------------------------------------------------------- /experiment_examples/test_trt_inference.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/experiment_examples/test_trt_inference.py -------------------------------------------------------------------------------- /requirements-cpu.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/requirements-cpu.txt -------------------------------------------------------------------------------- /requirements-gpu.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/requirements-gpu.txt -------------------------------------------------------------------------------- /requirements-mps.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/requirements-mps.txt -------------------------------------------------------------------------------- /run_live_portrait.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aihacker111/Efficient-Live-Portrait/HEAD/run_live_portrait.py --------------------------------------------------------------------------------