QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 5653|回复: 0

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

[复制链接]

等级头衔

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

丰功伟绩

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

联系方式
发表于 2021-1-11 15:08:16 | 显示全部楼层 |阅读模式
       BackgroundMattingV2 是华盛顿大学几位研究员提出的一种实时、高分辨率的背景替换技术,能保留头发细节,效果惊人,是基于 Python 实现的。在 4K 分辨率下,该技术的运行速度为 30fps,在现代 GPU 上,高清的运行速度为 60fps。该技术是基于背景抠图,其中一帧额外的背景被捕获并用于恢复前景蒙版和前景层。  E9 Z) K2 X1 C% l  t7 I
1.jpg " C; H3 V2 N. V% N- \$ U" N- V
项目源码地址:
( y: f$ M! P! n4 L& ~https://github.com/PeterL1n/BackgroundMattingV2
& @4 r) Y* z7 d项目依赖库:
( ?# o  `) Q  l* _6 m) B4 e  kornia==0.4.1
7 H* p; e& n+ V  tensorboard==2.3.03 `0 e# t6 K7 h
  torchvision==0.8.19 S% ]/ Q) w* n6 L/ _
  tqdm==4.51.04 M6 Y1 h1 u9 ~$ [$ ~5 ^  \" m/ O( [
  opencv-python==4.4.0.44/ Z, M0 \% o+ F+ k1 B8 S( [
  onnxruntime==1.6.0
/ |' }+ B3 K& m" w开发者提供的一些文件资源(国内需木弟子):$ j7 }% s5 y# c% o% g
1、下载模型/权重文件0 y+ [# @( ~! y0 O* r$ D
https://drive.google.com/drive/folders/1cbetlrKREitIgjnIikG1HdM4x72FtgBh?usp=sharing
: e% B( E, V+ Q; V4 x2、用于练习的视频和图片文件
- s1 f7 M4 Z# O% ?$ }$ sHD视频:
9 P/ \" W! {1 ^# d' |+ Ghttps://drive.google.com/drive/folders/1j3BMrRFhFpfzJAe6P2WDtfanoeSCLPiq6 A9 f+ R4 g) O
4K视频和图片:/ V% L1 s& r1 ?, h1 p
https://drive.google.com/drive/folders/16H6Vz3294J-DEzauw06j4IUARRqYGgRD?usp=sharing
1 m4 k& B! M) P! D项目demo脚本介绍:& x; ]# P4 d  }( {
inference_images.py:用于图片中的背景替换,用法如下:7 B# y) {/ k  w: U, R& f
python inference_images.py, I+ \8 F% W0 ?$ x
--model-type mattingrefine
9 S$ {: N: A( U--model-backbone resnet50$ R& l: `7 E# I! w
--model-backbone-scale 0.25
7 r0 H- {- H  t; F# J0 l--model-refine-mode sampling
4 K' U8 ?- \% _; B0 G--model-refine-sample-pixels 80000
8 Y8 _1 L/ G3 z( K--model-checkpoint "PATH_TO_CHECKPOINT"
2 N3 f* o+ j( V9 a8 e--images-src "PATH_TO_IMAGES_SRC_DIR"& l0 `$ E& O% c% |. q- }7 F
--images-bgr "PATH_TO_IMAGES_BGR_DIR"
1 Y7 q9 m2 u+ L- o% X4 N" K, T--output-dir "PATH_TO_OUTPUT_DIR"
6 V" R" F% G, c7 X* X9 }( _--output-type com fgr pha' `/ l) l6 Y5 [6 `5 a
inference_video.py: 用于视频中的背景替换,用法如下:% K$ |- T$ D, H0 C# h  W
python inference_video.py
$ D- M7 D/ f; M0 s; V7 p8 J1 U+ l. i--model-type mattingrefine
& s1 O4 Y/ A) h- e--model-backbone resnet50
# \( n: Z7 k/ [0 F. ~9 {$ G" G--model-backbone-scale 0.25
* }. w% r! z/ |! L' \, |--model-refine-mode sampling ( L! K8 f2 o' ^+ |6 Y0 a
--model-refine-sample-pixels 80000 / N$ Z! @7 q0 G- B5 |4 d) y
--model-checkpoint "PATH_TO_CHECKPOINT"   F9 s1 y; E( r
--video-src "PATH_TO_VIDEO_SRC"
$ y7 T3 }1 n( R1 G--video-bgr "PATH_TO_VIDEO_BGR" / d4 a4 ]4 v% `
--video-resize 1920 1080 $ [- H5 k6 `5 B" e+ |. `, {
--output-dir "PATH_TO_OUTPUT_DIR"
4 ]* V0 Q2 c. n% f% i: ]) Z--output-type com fgr pha err ref( L4 m) o- t9 y5 [* ~
inference_webcam.py:用于使用网络摄像头下的交互式背景替换,用法如下:
" O- g+ H* k7 v7 ypython inference_webcam.py
, L9 Q, o0 f0 `2 k--model-type mattingrefine
  G8 r: c$ m/ ~0 Y' \--model-backbone resnet50
, k$ _. d% G4 X! V--model-checkpoint "PATH_TO_CHECKPOINT"
" u3 Z. c- q( @( e" n--resolution 1280 720
6 P' ], o% X: B& w7 Q7 n虚拟摄像机
% N- }: R3 {  u! A9 I/ K       开发者提供了一个应用插件,通过他们的模型将网络摄像头视频输送到一个虚拟摄像头。该插件仅适用于Linux系统,可以在Zoom视频会议软件中使用。更多详情请查看:
, k- A8 @) G  F1 ]( T) h6 Nhttps://github.com/andreyryabtsev/BGMv2-webcam-plugin-linux
' u, ~% V/ H( u$ h+ n, b. s& u在Google Colab上体验0 t! j7 X, d; g- ?& F) G
       另外,开发者还提供了Google Colab的体验地址(国内需要木弟子),可以体验替换图片和视频中的背景。3 C, I4 _, \7 k$ |3 a5 ]# @3 O
1、图片背景替换体验地址:
% R" ~2 v; A' Uhttps://colab.research.google.com/drive/1cTxFq1YuoJ5QPqaTcnskwlHDolnjBkB9?usp=sharing
! J8 b- ^+ ]" k4 D2、视频背景替换体验地址:1 T: M) Z, x5 [& B/ K" v6 l
https://colab.research.google.com/drive/1Y9zWfULc8-DDTSsCH-pX6Utw8skiJG5s?usp=sharing
7 x, t* q! \) O4 F4 K0 \附上开发者提供的项目演示视频:- d* p7 q( R9 m5 v9 e6 }4 R

* _/ b5 e5 Q5 D" _" C9 P: Q
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-6-7 19:05

Powered by paopaomj X3.5 © 2016-2025 sitemap

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