QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 6054|回复: 0

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

[复制链接]

等级头衔

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

丰功伟绩

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

联系方式
发表于 2021-1-11 15:08:16 | 显示全部楼层 |阅读模式
       BackgroundMattingV2 是华盛顿大学几位研究员提出的一种实时、高分辨率的背景替换技术,能保留头发细节,效果惊人,是基于 Python 实现的。在 4K 分辨率下,该技术的运行速度为 30fps,在现代 GPU 上,高清的运行速度为 60fps。该技术是基于背景抠图,其中一帧额外的背景被捕获并用于恢复前景蒙版和前景层。; j# s$ [: P3 i
1.jpg
8 S. K; {1 G* b% j项目源码地址:% a3 s/ A$ X9 {( X7 f, }3 f9 t. M
https://github.com/PeterL1n/BackgroundMattingV2& P* @, W* z( \' j5 j
项目依赖库:
, Q/ T6 x0 {/ U" D  t2 k9 @$ D6 X  kornia==0.4.1: v0 @# t3 A, L) K( m5 M, z
  tensorboard==2.3.0
& l# U8 r" l7 m* j7 ~# @, @* D  torchvision==0.8.1
0 `+ T! H+ J# ]. y4 h  tqdm==4.51.06 J% U1 w/ z  Q  B; r; D
  opencv-python==4.4.0.44; w" H+ L9 U3 s- a3 W
  onnxruntime==1.6.0- n7 |; |9 p6 G- b
开发者提供的一些文件资源(国内需木弟子):
  j2 F& Y, p  H6 M. L1、下载模型/权重文件
- k8 L1 t5 N. R, [https://drive.google.com/drive/folders/1cbetlrKREitIgjnIikG1HdM4x72FtgBh?usp=sharing
$ L9 S1 f, A# N9 d  `; w2、用于练习的视频和图片文件
) w# M& t& }, h5 Z; [HD视频:6 Z) y5 l3 c( Q! I
https://drive.google.com/drive/folders/1j3BMrRFhFpfzJAe6P2WDtfanoeSCLPiq" g: v0 U/ u( d( F: O7 w/ z2 i
4K视频和图片:
6 i7 P! X* @$ L+ V% s6 Ohttps://drive.google.com/drive/folders/16H6Vz3294J-DEzauw06j4IUARRqYGgRD?usp=sharing
% T) l! D+ P- W3 U* }1 b项目demo脚本介绍:
* Y- c2 W, A) m! a8 @+ e2 m+ k0 pinference_images.py:用于图片中的背景替换,用法如下:
0 ^- f  s3 M4 _  a! C% A) \% `5 A# Vpython inference_images.py
& `, R) r) X9 ]  U! o6 P5 i--model-type mattingrefine
( p. ^" A* n+ N6 G) Q, o5 J--model-backbone resnet50
# r3 Q, F8 U. B" I- x4 i--model-backbone-scale 0.25
) e2 T$ O: J2 Q2 [2 Z( O# N--model-refine-mode sampling; x# G! t+ R' U) d
--model-refine-sample-pixels 80000
- u0 J8 N: Z% s$ m: ]4 o--model-checkpoint "PATH_TO_CHECKPOINT"  [  p7 z8 w' `* a# y3 z( I) u
--images-src "PATH_TO_IMAGES_SRC_DIR"! u6 A$ B. D: ?& t. A# V, |/ ^' {5 |
--images-bgr "PATH_TO_IMAGES_BGR_DIR"
0 t7 \0 A  g/ O--output-dir "PATH_TO_OUTPUT_DIR"
( Q, r5 f# D4 Q- n1 ~--output-type com fgr pha9 @" l9 P, L) D% {9 Z$ x
inference_video.py: 用于视频中的背景替换,用法如下:" R# z6 X4 s6 K: ^* S+ g, h! t3 M2 m
python inference_video.py . \# i' o8 V& c+ q7 c  B
--model-type mattingrefine
$ [- R+ t: H9 P  v7 A" |--model-backbone resnet50
$ b* Z5 h2 n, x  Q# N5 x: M" d' y--model-backbone-scale 0.25
$ k, T6 c) Q4 \: h, {5 |--model-refine-mode sampling $ e1 C4 F5 |( ?
--model-refine-sample-pixels 80000 $ ^& k. o8 O0 m5 X
--model-checkpoint "PATH_TO_CHECKPOINT" . X% u2 ~% C/ R1 o+ q& _
--video-src "PATH_TO_VIDEO_SRC"
- I  w- @7 F# J2 ]$ |) Q--video-bgr "PATH_TO_VIDEO_BGR" / |% Y/ i7 A9 _" n4 a4 c
--video-resize 1920 1080
4 X" [; `/ t; i1 |7 U1 l5 L( x--output-dir "PATH_TO_OUTPUT_DIR"
8 s. p6 M/ U7 A3 H--output-type com fgr pha err ref
# D0 l9 L, L1 e. Vinference_webcam.py:用于使用网络摄像头下的交互式背景替换,用法如下:
+ o; D" }0 C, R# Npython inference_webcam.py
' i! i1 s% o2 F( v, A- O2 Z--model-type mattingrefine 1 {4 B& l3 y- L3 a8 n+ O! u, }
--model-backbone resnet50 6 v5 c; W8 q- m9 t: \  Z
--model-checkpoint "PATH_TO_CHECKPOINT" 5 m9 q  B* A. {' D
--resolution 1280 720
4 M0 X8 W5 ^0 e2 S虚拟摄像机7 i2 W2 }* t) g6 m3 j$ j4 {  p
       开发者提供了一个应用插件,通过他们的模型将网络摄像头视频输送到一个虚拟摄像头。该插件仅适用于Linux系统,可以在Zoom视频会议软件中使用。更多详情请查看:4 z2 V% }0 }/ H2 Y. Y
https://github.com/andreyryabtsev/BGMv2-webcam-plugin-linux
) C* G8 j3 `, A在Google Colab上体验% O) O9 _+ o. q! h
       另外,开发者还提供了Google Colab的体验地址(国内需要木弟子),可以体验替换图片和视频中的背景。) l5 h  `) B& ]1 ]
1、图片背景替换体验地址:# r/ F  }) |( N! }
https://colab.research.google.com/drive/1cTxFq1YuoJ5QPqaTcnskwlHDolnjBkB9?usp=sharing
% `" Z+ s1 X3 M& q5 z2、视频背景替换体验地址:
; a. _4 h6 Z# Dhttps://colab.research.google.com/drive/1Y9zWfULc8-DDTSsCH-pX6Utw8skiJG5s?usp=sharing
& C4 J7 [; d  }2 k附上开发者提供的项目演示视频:
/ t# I  I/ x( Y2 F* e
. S, _- ]7 L# A' e( r) U
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-9-10 00:49

Powered by paopaomj X3.5 © 2016-2025 sitemap

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