QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 5370|回复: 0

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

[复制链接]

等级头衔

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

丰功伟绩

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

联系方式
发表于 2021-1-11 15:08:16 | 显示全部楼层 |阅读模式
       BackgroundMattingV2 是华盛顿大学几位研究员提出的一种实时、高分辨率的背景替换技术,能保留头发细节,效果惊人,是基于 Python 实现的。在 4K 分辨率下,该技术的运行速度为 30fps,在现代 GPU 上,高清的运行速度为 60fps。该技术是基于背景抠图,其中一帧额外的背景被捕获并用于恢复前景蒙版和前景层。: s, C8 M1 w2 n4 P
1.jpg , G7 Q% M! I4 p: ~* K, c% p4 V
项目源码地址:- e: o: Y3 y5 X4 D
https://github.com/PeterL1n/BackgroundMattingV2
5 C: j. W) C1 P. _- p项目依赖库:7 l4 j- b& N; m4 C* @+ v2 |
  kornia==0.4.1/ @; t) C2 p: w9 q
  tensorboard==2.3.0
* v" q/ ^0 o. Y( l& T& v3 V2 _3 J  torchvision==0.8.1% l% e7 j, r( x) U1 R( P, H, d
  tqdm==4.51.0
6 K# k  H  c8 N. p  opencv-python==4.4.0.44
; J2 K, t' z) c( p: L3 [  onnxruntime==1.6.0
" p7 J8 |) s; Y9 |! v3 o  p开发者提供的一些文件资源(国内需木弟子):. o) i- G5 D5 O' W1 G
1、下载模型/权重文件
; T3 A' T% o1 `' A0 z/ Rhttps://drive.google.com/drive/folders/1cbetlrKREitIgjnIikG1HdM4x72FtgBh?usp=sharing' v0 Y5 N3 d  c; V# S
2、用于练习的视频和图片文件! k! K/ R( m6 O. j4 k8 j
HD视频:
5 q5 G( L( {7 \1 C/ K* zhttps://drive.google.com/drive/folders/1j3BMrRFhFpfzJAe6P2WDtfanoeSCLPiq
" _3 C' h' N0 w4K视频和图片:
6 G8 U0 |6 B" E5 J6 j9 g2 b7 K7 thttps://drive.google.com/drive/folders/16H6Vz3294J-DEzauw06j4IUARRqYGgRD?usp=sharing
3 B# C4 D! J$ b  H项目demo脚本介绍:
2 \7 \/ k4 l. pinference_images.py:用于图片中的背景替换,用法如下:5 M6 x" p- ]8 o  S
python inference_images.py
, ]; {' M9 h- b- w; B6 W--model-type mattingrefine
. F4 I' q% {( U: `  k3 y& O( D--model-backbone resnet50; O+ X2 G) {$ G4 G
--model-backbone-scale 0.254 W% K0 _; J4 E2 {3 j
--model-refine-mode sampling/ A' e7 k7 P" `; }* f, _3 T
--model-refine-sample-pixels 800009 Q+ l& b3 k$ }% I' z: i2 ~, g
--model-checkpoint "PATH_TO_CHECKPOINT"
1 A$ @4 l' \! Z# t. L) S--images-src "PATH_TO_IMAGES_SRC_DIR"8 f, x5 z5 V  A% u- R5 o; \8 N
--images-bgr "PATH_TO_IMAGES_BGR_DIR"
. @3 m; T: Z' s" d. y. A2 V--output-dir "PATH_TO_OUTPUT_DIR"
. n5 X+ b/ R1 G0 I+ S--output-type com fgr pha, D  b2 S' X# i: t. Q% Y
inference_video.py: 用于视频中的背景替换,用法如下:1 J( e8 p. u% _- ~$ [
python inference_video.py & Y8 Y; c; y" X( v. x: f1 Y
--model-type mattingrefine
3 o0 c5 T6 V) p1 C1 h1 ], N( L% k--model-backbone resnet50
; }4 m  G$ x( G" H: N! _--model-backbone-scale 0.25 # \0 \1 m( b; W2 ~" _
--model-refine-mode sampling % E# y! p- q+ l' h9 H/ u
--model-refine-sample-pixels 80000 $ v1 U: Y. ^. b# Z; {& J
--model-checkpoint "PATH_TO_CHECKPOINT"
9 \" J2 \, k2 f$ i5 K1 t* N--video-src "PATH_TO_VIDEO_SRC"
  r' L6 N, t. z--video-bgr "PATH_TO_VIDEO_BGR" ; D! `. n  ^" m4 k1 y! j
--video-resize 1920 1080 $ w0 _0 ~: q, Z1 T- \# h( B
--output-dir "PATH_TO_OUTPUT_DIR"
7 A. y2 n: r4 }8 L; u- `--output-type com fgr pha err ref
1 B: X( _9 w% G4 `inference_webcam.py:用于使用网络摄像头下的交互式背景替换,用法如下:
& n& N, T+ F; I7 W4 b" {python inference_webcam.py
5 M8 a  F. Q5 J8 Q& P4 U  G--model-type mattingrefine
: X6 `, a9 H/ k--model-backbone resnet50 8 @5 r. H5 |! J) y
--model-checkpoint "PATH_TO_CHECKPOINT"
/ d( h# e8 n- a, P! `--resolution 1280 720; Z3 G2 M) i! S# e7 [! R
虚拟摄像机. d3 H6 a. y$ Y+ @0 ~
       开发者提供了一个应用插件,通过他们的模型将网络摄像头视频输送到一个虚拟摄像头。该插件仅适用于Linux系统,可以在Zoom视频会议软件中使用。更多详情请查看:
/ B! t( o0 c! P4 Bhttps://github.com/andreyryabtsev/BGMv2-webcam-plugin-linux1 J, B3 \. t3 P0 E
在Google Colab上体验
, v: u! d) s* x* U  f$ b& [) x       另外,开发者还提供了Google Colab的体验地址(国内需要木弟子),可以体验替换图片和视频中的背景。2 |6 y5 V& D! Z6 o5 o
1、图片背景替换体验地址:
) t( t4 Z: ^2 ~https://colab.research.google.com/drive/1cTxFq1YuoJ5QPqaTcnskwlHDolnjBkB9?usp=sharing5 G0 o' @( }# ^# O- v5 J8 V6 _8 P
2、视频背景替换体验地址:
4 Q8 M7 b4 J  z6 Thttps://colab.research.google.com/drive/1Y9zWfULc8-DDTSsCH-pX6Utw8skiJG5s?usp=sharing
3 S0 g% p$ n& ^! x- O: [6 n& N附上开发者提供的项目演示视频:9 f% \4 n, m: G/ g% [" I; {
# \2 }  |. d5 l8 E. o3 F
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-2-17 21:05

Powered by paopaomj X3.5 © 2016-2025 sitemap

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