QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 5277|回复: 0

[Python] 强大的开源实时视频抠图工具,头发丝也能完整保留

[复制链接]

等级头衔

积分成就    金币 : 2861
   泡泡 : 1516
   精华 : 6
   在线时间 : 1322 小时
   最后登录 : 2025-11-29

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老活跃会员

联系方式
发表于 2021-1-11 15:08:16 | 显示全部楼层 |阅读模式
       BackgroundMattingV2 是华盛顿大学几位研究员提出的一种实时、高分辨率的背景替换技术,能保留头发细节,效果惊人,是基于 Python 实现的。在 4K 分辨率下,该技术的运行速度为 30fps,在现代 GPU 上,高清的运行速度为 60fps。该技术是基于背景抠图,其中一帧额外的背景被捕获并用于恢复前景蒙版和前景层。1 U% ^$ |% a4 q( C9 P
1.jpg
5 S  i) R. x+ {% J2 m! O- H项目源码地址:
: l9 ^: ~" ~- X. r& H* d; hhttps://github.com/PeterL1n/BackgroundMattingV2
6 h* k) L4 _3 P0 |5 s7 s2 o项目依赖库:2 ~; O2 K6 H) K0 w# {
  kornia==0.4.1
  X- g( r/ `" r; d% A' g! `- G  tensorboard==2.3.02 X5 U1 d! u* S- m
  torchvision==0.8.1# J" i# t! i5 c# L& ?. F
  tqdm==4.51.0
; l# m) k$ ?+ V  opencv-python==4.4.0.44
9 w$ J2 i4 s# ?  onnxruntime==1.6.0
+ X# a1 P% V9 N开发者提供的一些文件资源(国内需木弟子):  s' f8 V: \7 ?+ l4 a" V. J4 N8 R9 o
1、下载模型/权重文件
0 z/ r% U" P* m$ _, Rhttps://drive.google.com/drive/folders/1cbetlrKREitIgjnIikG1HdM4x72FtgBh?usp=sharing
$ ^) R! S$ U& R, J* m( w9 m2、用于练习的视频和图片文件: q( i" x* s" E& |
HD视频:0 k4 D/ i0 [0 `7 B+ A
https://drive.google.com/drive/folders/1j3BMrRFhFpfzJAe6P2WDtfanoeSCLPiq8 A. O* R" b: l2 q4 ?$ \. |# k& j
4K视频和图片:0 Q( I8 m8 Y  h$ f& [
https://drive.google.com/drive/folders/16H6Vz3294J-DEzauw06j4IUARRqYGgRD?usp=sharing
9 H) ~( O  h8 G1 M& d* j项目demo脚本介绍:) W" H$ F+ v8 S5 \# \0 U. R
inference_images.py:用于图片中的背景替换,用法如下:2 N- S5 V  i  W
python inference_images.py* y2 X+ D/ t) [' G$ i
--model-type mattingrefine" h% x7 ]2 T5 v/ p! h/ g2 h3 E
--model-backbone resnet50
6 v- }4 C! U* O$ E--model-backbone-scale 0.25! U* ^, @% p3 M
--model-refine-mode sampling
* k5 @/ |! D8 M* r--model-refine-sample-pixels 800001 ]8 @( j3 L9 U5 L. i1 g
--model-checkpoint "PATH_TO_CHECKPOINT"  T& f  t: Q  c# i
--images-src "PATH_TO_IMAGES_SRC_DIR"+ Q# c9 S6 G# O7 d
--images-bgr "PATH_TO_IMAGES_BGR_DIR"; ?8 _- b" {9 v" o7 x
--output-dir "PATH_TO_OUTPUT_DIR"
" X8 m" n% O" C7 v3 U, |--output-type com fgr pha& {8 A1 |% z' d- B# p: c+ q2 [! A
inference_video.py: 用于视频中的背景替换,用法如下:9 @1 e% v- I0 O% Z! y% B
python inference_video.py
8 q  i) T: {5 k: [* ^* s( n--model-type mattingrefine
! {/ a. B  `  g* _--model-backbone resnet50 . |# n/ `" \# s5 f% d
--model-backbone-scale 0.25 " M: Y9 e  B0 U$ e" m0 p* b1 e+ T& O
--model-refine-mode sampling
/ G1 P# V( ?) m, r. n, j--model-refine-sample-pixels 80000
1 S/ H" V0 H" W--model-checkpoint "PATH_TO_CHECKPOINT" 8 S5 T0 J7 P" Q  O
--video-src "PATH_TO_VIDEO_SRC" + D) I3 c8 D$ Y$ G
--video-bgr "PATH_TO_VIDEO_BGR"
, B6 |% a5 [% M) C# [--video-resize 1920 1080
9 u8 d0 ~% \: Q3 O4 H--output-dir "PATH_TO_OUTPUT_DIR"
+ F8 i0 f8 x. J--output-type com fgr pha err ref; s* H. Z5 l- o. y
inference_webcam.py:用于使用网络摄像头下的交互式背景替换,用法如下:: V2 Y5 T8 z% b7 v3 A
python inference_webcam.py
% d+ Z$ Z& m4 N; T% k1 o$ O--model-type mattingrefine
# h  x* s- o- k6 f0 w--model-backbone resnet50 & t4 X! b3 J  m( @/ J/ K! D$ |
--model-checkpoint "PATH_TO_CHECKPOINT" 8 s' m; Y; A# A5 r
--resolution 1280 720
3 W! S  E% j2 O3 h" d虚拟摄像机
5 B' t0 a0 n0 t; k       开发者提供了一个应用插件,通过他们的模型将网络摄像头视频输送到一个虚拟摄像头。该插件仅适用于Linux系统,可以在Zoom视频会议软件中使用。更多详情请查看:( g/ e1 ^5 ~4 m% g
https://github.com/andreyryabtsev/BGMv2-webcam-plugin-linux
$ g- U/ o2 x' k7 R& D在Google Colab上体验
+ J& g" N7 B* J- S       另外,开发者还提供了Google Colab的体验地址(国内需要木弟子),可以体验替换图片和视频中的背景。
/ X7 K. O8 i0 R& w1 O1、图片背景替换体验地址:4 x, ^3 ?7 @( ?: c+ b
https://colab.research.google.com/drive/1cTxFq1YuoJ5QPqaTcnskwlHDolnjBkB9?usp=sharing7 Q% Y; C# _4 K* W- i4 ?5 m
2、视频背景替换体验地址:6 V, X7 j  C3 P/ Y! e
https://colab.research.google.com/drive/1Y9zWfULc8-DDTSsCH-pX6Utw8skiJG5s?usp=sharing
- @! e2 k+ G- u附上开发者提供的项目演示视频:
0 w9 z$ j+ O% [' g; g' g3 i" j' r
  C# v4 g8 f3 m# Z1 g
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2026-1-8 00:15

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表