QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 4908|回复: 0

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

[复制链接]

等级头衔

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

丰功伟绩

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

联系方式
发表于 2021-1-11 15:08:16 | 显示全部楼层 |阅读模式
       BackgroundMattingV2 是华盛顿大学几位研究员提出的一种实时、高分辨率的背景替换技术,能保留头发细节,效果惊人,是基于 Python 实现的。在 4K 分辨率下,该技术的运行速度为 30fps,在现代 GPU 上,高清的运行速度为 60fps。该技术是基于背景抠图,其中一帧额外的背景被捕获并用于恢复前景蒙版和前景层。
1 _' b* v$ W5 U8 i 1.jpg
. q: V4 M7 O8 d6 p# H项目源码地址:' q9 M" ?9 E$ s. F
https://github.com/PeterL1n/BackgroundMattingV2+ j1 n; j9 a; H
项目依赖库:
5 ^$ Y3 n! a1 y% R' U  kornia==0.4.1
6 g$ C" g* }  k7 y. B: |% b' P- O* U  tensorboard==2.3.0# r- a6 L' S3 U1 ]3 b7 R
  torchvision==0.8.1
5 ]8 g2 u7 w* I# m, d5 u) k' J$ i  tqdm==4.51.08 C" k9 I+ G7 b/ Y2 H
  opencv-python==4.4.0.44+ Q( ~5 }' E. Z. `; W
  onnxruntime==1.6.0: u# Q9 m/ _4 K8 y1 a! b; {
开发者提供的一些文件资源(国内需木弟子):
8 L2 V2 E. N( ]4 M+ T1、下载模型/权重文件
5 ^+ I, X& r. r8 a% b7 e5 Ahttps://drive.google.com/drive/folders/1cbetlrKREitIgjnIikG1HdM4x72FtgBh?usp=sharing6 ?8 I7 y9 R) [. J5 H; V0 x6 a- {- }
2、用于练习的视频和图片文件
& v2 ?$ x+ `' S& Z6 L2 X2 ]HD视频:1 w3 e* a- U8 Q
https://drive.google.com/drive/folders/1j3BMrRFhFpfzJAe6P2WDtfanoeSCLPiq: L1 c+ x. E4 ?5 `2 ^. M1 d( k% n
4K视频和图片:0 y, I- n* b- X  S% @5 h: i& Z
https://drive.google.com/drive/folders/16H6Vz3294J-DEzauw06j4IUARRqYGgRD?usp=sharing
- D& O$ M; A3 d: F5 e" H# S- d项目demo脚本介绍:$ y2 z- ^. P( _3 h6 e2 w! ^
inference_images.py:用于图片中的背景替换,用法如下:9 D( Q, `# g  T0 y9 |
python inference_images.py
1 f, }8 [) v2 m" h* f" q" C--model-type mattingrefine
( ]% J3 W. ~3 V- D; Q+ e9 g) R--model-backbone resnet50
$ D5 K! f. C% g. [! o! v. \$ D--model-backbone-scale 0.257 W& S6 s2 R: `2 d, w: |% m
--model-refine-mode sampling/ b  k3 h: v( o6 G9 d% y3 _" B- Y7 O
--model-refine-sample-pixels 80000
( O6 M. q, Y5 g--model-checkpoint "PATH_TO_CHECKPOINT"0 [* }2 O8 ^; [" I1 T
--images-src "PATH_TO_IMAGES_SRC_DIR"+ j4 L1 C' M  x' ?1 \! }* _% G
--images-bgr "PATH_TO_IMAGES_BGR_DIR"- n0 G7 M* s, G( K
--output-dir "PATH_TO_OUTPUT_DIR"
8 U' P! a* K# N--output-type com fgr pha1 N0 ]$ X; R3 g. |4 e
inference_video.py: 用于视频中的背景替换,用法如下:
/ W  u; h6 l* @: tpython inference_video.py ! F5 v% J8 S6 y& z1 W+ r$ y* Q
--model-type mattingrefine
8 ?2 w9 Q8 K* }1 W" z--model-backbone resnet50
) E  U& M( C2 A6 |. X! \1 C--model-backbone-scale 0.25 7 e# D$ P0 X! L
--model-refine-mode sampling & V. x- b: ~% Z- Q
--model-refine-sample-pixels 80000 * D4 g, K' F8 G2 a" t
--model-checkpoint "PATH_TO_CHECKPOINT" 6 F: K4 H1 l$ E, J7 a- ^9 a
--video-src "PATH_TO_VIDEO_SRC"
, }( v8 x, Z! N: o1 V5 ~--video-bgr "PATH_TO_VIDEO_BGR"
. U2 x# x# U0 D" w0 D1 _7 h; `--video-resize 1920 1080 4 |2 z! j& ~/ }  y
--output-dir "PATH_TO_OUTPUT_DIR"
+ V, e; Y% {% A8 }6 C, f$ a--output-type com fgr pha err ref; @9 I8 ~4 n7 o5 M: y+ H- v
inference_webcam.py:用于使用网络摄像头下的交互式背景替换,用法如下:
, ~1 \9 n* [" {& d# W( Ppython inference_webcam.py
" r' J" Y$ ?3 J1 j9 _+ X& Z0 ?' P! P1 K  v--model-type mattingrefine
! b' H( o; {, u* q6 N: |5 b; O; U--model-backbone resnet50   q5 S1 X, Y, a
--model-checkpoint "PATH_TO_CHECKPOINT" ) d4 W" m+ o3 b
--resolution 1280 720
. d* L, a' G, H虚拟摄像机
" O: Y+ _+ T8 k7 Y6 {  [, w       开发者提供了一个应用插件,通过他们的模型将网络摄像头视频输送到一个虚拟摄像头。该插件仅适用于Linux系统,可以在Zoom视频会议软件中使用。更多详情请查看:
( q" ]* i+ B/ D. H0 Ghttps://github.com/andreyryabtsev/BGMv2-webcam-plugin-linux
8 @7 T9 E  n& {5 ?在Google Colab上体验
2 L& H% q3 P" Q& _! ^/ R       另外,开发者还提供了Google Colab的体验地址(国内需要木弟子),可以体验替换图片和视频中的背景。0 `. p7 H( j& b* {" b
1、图片背景替换体验地址:+ M* b3 o; J) y' t+ \9 ]
https://colab.research.google.com/drive/1cTxFq1YuoJ5QPqaTcnskwlHDolnjBkB9?usp=sharing
+ n  t9 H6 @; ]+ B  X2、视频背景替换体验地址:
# L* Y9 E  S6 R. Mhttps://colab.research.google.com/drive/1Y9zWfULc8-DDTSsCH-pX6Utw8skiJG5s?usp=sharing! G" f* i- L% J' S
附上开发者提供的项目演示视频:& J% V* x3 f( U- S( l1 J% ]1 R$ s

8 J0 x8 U  B3 f" G
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-23 22:47

Powered by paopaomj X3.5 © 2016-2025 sitemap

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