QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 4530|回复: 0

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

[复制链接]

等级头衔

积分成就    金币 : 2857
   泡泡 : 1516
   精华 : 6
   在线时间 : 1319 小时
   最后登录 : 2025-5-14

丰功伟绩

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

联系方式
发表于 2021-1-11 15:08:16 | 显示全部楼层 |阅读模式
       BackgroundMattingV2 是华盛顿大学几位研究员提出的一种实时、高分辨率的背景替换技术,能保留头发细节,效果惊人,是基于 Python 实现的。在 4K 分辨率下,该技术的运行速度为 30fps,在现代 GPU 上,高清的运行速度为 60fps。该技术是基于背景抠图,其中一帧额外的背景被捕获并用于恢复前景蒙版和前景层。& n6 q$ Z7 T& z9 `8 a9 ~0 i+ _) _
1.jpg
  X2 c$ J1 n( a8 \项目源码地址:$ N6 Q# K/ u& U' T+ h/ i' z0 B7 D
https://github.com/PeterL1n/BackgroundMattingV2
. X- O  z  o* I项目依赖库:2 S' h7 L2 q/ G: F" r3 ~
  kornia==0.4.1# ?3 c  V. |% Z$ ]7 [: f+ a
  tensorboard==2.3.04 H1 E& j4 H7 w- n8 Y% P$ a% K
  torchvision==0.8.1
7 f( C" R, z4 d$ p9 |& c  tqdm==4.51.0
( `5 W/ A/ Q; Y5 J. q% `- d7 P# h  opencv-python==4.4.0.44* \8 d4 r6 c+ i
  onnxruntime==1.6.0
- ^( j. |9 ~6 ~开发者提供的一些文件资源(国内需木弟子):
2 l: n( U5 a& s( p1 ]1、下载模型/权重文件
. h# N2 [& P) H; D3 _0 `https://drive.google.com/drive/folders/1cbetlrKREitIgjnIikG1HdM4x72FtgBh?usp=sharing
/ ^4 ^. m& b% h+ |) i+ R, d- l2、用于练习的视频和图片文件
2 ~" j$ U  L( X) {3 L' eHD视频:( J3 \, R: T+ ]  T' |
https://drive.google.com/drive/folders/1j3BMrRFhFpfzJAe6P2WDtfanoeSCLPiq
! |. X2 }; S/ ^/ E% q4K视频和图片:
  g) t; q) \7 \4 k. e* U; Z/ j* Yhttps://drive.google.com/drive/folders/16H6Vz3294J-DEzauw06j4IUARRqYGgRD?usp=sharing
' R. n" G" p  j. u/ g项目demo脚本介绍:5 V% Y; W2 r% d4 Z8 c
inference_images.py:用于图片中的背景替换,用法如下:
" R& k$ _1 u4 M7 v/ B8 i& Dpython inference_images.py
, }  G. i5 m: ?* c4 t" s--model-type mattingrefine: L; ?6 S$ M4 `3 w  p( d  s
--model-backbone resnet50
* j2 _( U' ~# |8 A--model-backbone-scale 0.25& r, \" k7 t  r6 s) a
--model-refine-mode sampling" z* P* H. z4 r( K( K
--model-refine-sample-pixels 80000, z( A5 b9 c9 J1 W  T3 @# D
--model-checkpoint "PATH_TO_CHECKPOINT"
: n( f. a* c2 s2 X8 B3 Z# U--images-src "PATH_TO_IMAGES_SRC_DIR"
2 A! B/ d2 K# t' Z4 j) t! ~--images-bgr "PATH_TO_IMAGES_BGR_DIR"
6 r$ p. X6 L/ V' o, @--output-dir "PATH_TO_OUTPUT_DIR"
6 X) Q" d! h' z--output-type com fgr pha
; J9 X0 F& a+ R2 oinference_video.py: 用于视频中的背景替换,用法如下:
/ P4 {& |9 v$ a2 T! {python inference_video.py
9 Z7 v. B" J( t* m' x3 i--model-type mattingrefine ! [1 O1 Y, [1 q: e$ _3 I
--model-backbone resnet50
% m0 i' l, H! c--model-backbone-scale 0.25
( s: O; `4 U$ z' B8 P. r: N--model-refine-mode sampling 7 l! ^5 a9 o* G( q7 N$ {
--model-refine-sample-pixels 80000 0 N9 o# O. G; J0 s
--model-checkpoint "PATH_TO_CHECKPOINT" 5 A" b' J- k+ P6 v. _7 Y" C
--video-src "PATH_TO_VIDEO_SRC"
1 o: ?/ w8 i, P--video-bgr "PATH_TO_VIDEO_BGR" ; w" f$ ]5 X0 p; r  M, o3 n
--video-resize 1920 1080
' ?: `2 V2 o' x5 A! n--output-dir "PATH_TO_OUTPUT_DIR" 0 {: e, x$ q6 W0 d
--output-type com fgr pha err ref! g9 s* K, ]$ l- a1 Q% l
inference_webcam.py:用于使用网络摄像头下的交互式背景替换,用法如下:' |0 _) R5 S7 M1 v$ \% i
python inference_webcam.py
6 G0 ?2 c# W" r# ^, e& Z3 }5 g--model-type mattingrefine
! U8 f7 x4 m9 H& d8 M--model-backbone resnet50
, ^3 ^; `! @$ ^. Q4 p* ~( w--model-checkpoint "PATH_TO_CHECKPOINT"
1 p5 M3 c# z" R1 D' k- n--resolution 1280 720
# C( k# Y) z( @& l. h虚拟摄像机
5 {# v4 b8 A6 F( u4 g       开发者提供了一个应用插件,通过他们的模型将网络摄像头视频输送到一个虚拟摄像头。该插件仅适用于Linux系统,可以在Zoom视频会议软件中使用。更多详情请查看:4 p7 A/ u$ @0 }% g9 g
https://github.com/andreyryabtsev/BGMv2-webcam-plugin-linux8 G+ t/ G4 X- `% g
在Google Colab上体验
) l- O5 A  C$ ?5 K" D2 k       另外,开发者还提供了Google Colab的体验地址(国内需要木弟子),可以体验替换图片和视频中的背景。* ~* L+ x. o( n7 A1 K
1、图片背景替换体验地址:7 ?8 [- F" f; |" F( ?
https://colab.research.google.com/drive/1cTxFq1YuoJ5QPqaTcnskwlHDolnjBkB9?usp=sharing' E# s/ K  a( e5 E7 v% x
2、视频背景替换体验地址:% K8 X' K; S" G' Q% {
https://colab.research.google.com/drive/1Y9zWfULc8-DDTSsCH-pX6Utw8skiJG5s?usp=sharing+ m) C& x4 r) M. c
附上开发者提供的项目演示视频:9 B9 l4 c% ~# z$ ^# s$ F
' I9 |' s* ^8 ^8 P& G
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-16 00:17

Powered by paopaomj X3.5 © 2016-2025 sitemap

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