feat(新功能):

fix(修复bug):  pose transform 图片合成视频方法更换
docs(文档变更):
refactor(重构):
test(增加测试):
This commit is contained in:
zchengrong
2025-06-11 16:12:39 +08:00
parent 72f24c9d14
commit 0214cdffa4

View File

@@ -3,9 +3,9 @@ import logging
import os.path import os.path
import numpy as np import numpy as np
import skvideo.io
# import boto3 # import boto3
from minio import Minio from minio import Minio
from moviepy.video.io.ImageSequenceClip import ImageSequenceClip
from app.core.config import * from app.core.config import *
from app.service.utils.new_oss_client import oss_upload_image from app.service.utils.new_oss_client import oss_upload_image
@@ -63,23 +63,10 @@ def upload_video(frames, user_id, category, file_name):
def ndarray_to_video(images, output_path, frame_size=(512, 768), fps=9): def ndarray_to_video(images, output_path, frame_size=(512, 768), fps=9):
save_path = os.path.join(POSE_TRANSFORM_VIDEO_PATH, output_path) save_path = os.path.join(r"E:\workspace\trinity_client_aida\app\service\generate_image\pose_transform_video", output_path)
# 初始化视频写入器 clip = ImageSequenceClip([frame for frame in images], fps=fps)
writer = skvideo.io.FFmpegWriter( clip.write_videofile(save_path, codec='libx264')
save_path,
inputdict={'-r': str(fps)},
outputdict={'-r': str(fps), '-vcodec': 'libx264'}
)
# 逐帧写入
for frame in images:
# 调整尺寸(可选)
# resized_frame = cv2.resize(frame, frame_size)
# 转换颜色通道(若需从 BGR 转 RGB
# rgb_frame = cv2.cvtColor(resized_frame, cv2.COLOR_BGR2RGB)
writer.writeFrame(frame)
# 关闭写入器
writer.close()
return save_path return save_path