From 56d194a4300610a17cc3c6682aaf63f039e9c4ab Mon Sep 17 00:00:00 2001
From: wangzhibo <wangzhibo@shsening.com>
Date: 星期日, 03 八月 2025 16:11:37 +0800
Subject: [PATCH] add matanyone-better auqliaty than robustvideomatting
---
auto_media_publisher/modifiers/video_matting/robust_video_matting_converter.py | 22 ++++++++++++----------
1 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/auto_media_publisher/modifiers/video_matting/video_matting_converter.py b/auto_media_publisher/modifiers/video_matting/robust_video_matting_converter.py
similarity index 92%
rename from auto_media_publisher/modifiers/video_matting/video_matting_converter.py
rename to auto_media_publisher/modifiers/video_matting/robust_video_matting_converter.py
index f8662d6..85b69ca 100644
--- a/auto_media_publisher/modifiers/video_matting/video_matting_converter.py
+++ b/auto_media_publisher/modifiers/video_matting/robust_video_matting_converter.py
@@ -7,7 +7,7 @@
import time
from pathlib import Path
from auto_media_publisher.utils.media_input_output import VideoReader, VideoWriter, ImageSequenceReader, ImageSequenceWriter
-from .matting_model.model import MattingNetwork
+from .robustvideomatting.model import MattingNetwork
import uuid
@@ -18,7 +18,7 @@
CHECKPOINT_MOBILENETV3 ="./models/rvm_mobilenetv3.pth"
-class VideoMattingConverter:
+class RobustVideoMattingConverter:
"""
瑙嗛鎶犲儚杞崲鍣�
灏佽鍘熸潵鐨� convert_video 閫昏緫锛屾敮鎸� video / png_sequence 杈撳嚭
@@ -43,7 +43,7 @@
def video_matting(self,
input: str,
bg_video: Optional[str] = None,
- bg_jpg: Optional[str] = None,
+ bg_image: Optional[str] = None,
output_video: Optional[str] = None,
output_alpha: Optional[str] = None,
output_fore: Optional[str] = None):
@@ -52,10 +52,11 @@
if not os.path.exists(input):
print("input file is NOT exist.")
return False
+
if bg_video and not os.path.exists(bg_video):
print("input background video is NOT exist.")
return False
- if bg_jpg and not os.path.exists(bg_jpg):
+ if bg_image and not os.path.exists(bg_image):
print("input background image is NOT exist.")
return False
@@ -65,7 +66,7 @@
downsample_ratio = None,
output_type = 'video',
background_video = bg_video,
- background_jpg = bg_jpg,
+ background_jpg = bg_image,
with_audio = True,
output_composition = output_video,
output_alpha = output_alpha,
@@ -116,13 +117,13 @@
if output_composition:
if with_audio:
- writer_com = VideoWriter(output_composition, frame_rate, int(output_video_mbps * 1_000_000),input_source)
+ writer_com = VideoWriter(output_composition, frame_rate, source.width,source.height,int(output_video_mbps * 1_000_000),input_source)
else:
- writer_com = VideoWriter(output_composition, frame_rate, int(output_video_mbps * 1_000_000))
+ writer_com = VideoWriter(output_composition, frame_rate, source.width,source.height,int(output_video_mbps * 1_000_000))
if output_alpha:
- writer_pha = VideoWriter(output_alpha, frame_rate, int(output_video_mbps * 1_000_000))
+ writer_pha = VideoWriter(output_alpha, frame_rate, source.width,source.height,int(output_video_mbps * 1_000_000))
if output_foreground:
- writer_fgr = VideoWriter(output_foreground, frame_rate, int(output_video_mbps * 1_000_000))
+ writer_fgr = VideoWriter(output_foreground, frame_rate,source.width,source.height, int(output_video_mbps * 1_000_000))
else: # png_sequence
if output_composition:
@@ -141,7 +142,8 @@
bgr_IMG = Image.open(background_jpg)
bgr = transforms.ToTensor()(bgr_IMG).to(self.device)
else:
- bgr = torch.tensor([155, 255, 155], device=self.device, dtype=dtype).div(255).view(1, 1, 3, 1, 1)
+ # 浣跨敤 0,200,0 鑰屼笉鏄� 0,255,0 閬垮厤杩囧害鏇濆厜
+ bgr = torch.tensor([0, 200, 0], device=self.device, dtype=dtype).div(255).view(1, 1, 3, 1, 1)
# 寮�濮嬫帹鐞�
self.model = self.model.eval()
--
Gitblit v1.9.1