网站体验调查问卷怎么做,wordpress有后台吗,微信h5网站模板下载,徐州贾汪区建设局网站目录
项目场景#xff1a;
问题描述
原因分析#xff1a;
解决方案#xff1a; 项目场景#xff1a;
使用OpenCV-Python 保存视频#xff0c;视频为numpy array格式#xff0c;保存的视频全部为无意义的绿色。 问题描述 用opencv 保存的视频会出现全部为绿色的情况
问题描述
原因分析
解决方案 项目场景
使用OpenCV-Python 保存视频视频为numpy array格式保存的视频全部为无意义的绿色。 问题描述 用opencv 保存的视频会出现全部为绿色的情况非常诡异
代码如下 output_path os.path.join(save_path, video_name_pose.mp4)fourcc cv2.VideoWriter_fourcc(*mp4v)video_writer cv2.VideoWriter(output_path, fourcc, fps, (sample_size[1], sample_size[0]))for frame_np in pose:frame_bgr cv2.cvtColor(frame_np, cv2.COLOR_RGB2BGR)video_writer.write(frame_bgr) video_writer.release() 原因分析
如果将fps改成24.0是可以保存成功的因此问题就在于保存不同的fps的时候出现了问题 fps24output_path os.path.join(save_path, video_name_pose.mp4)fourcc cv2.VideoWriter_fourcc(*mp4v)video_writer cv2.VideoWriter(output_path, fourcc, fps, (sample_size[1], sample_size[0]))for frame_np in pose:frame_bgr cv2.cvtColor(frame_np, cv2.COLOR_RGB2BGR)video_writer.write(frame_bgr) video_writer.release() 解决方案
其实用 torchvision.io 中的 write_video 保存更方便这个API基于PYAV开发的。
例子如下
import torch
import torchvision.io# 假设 video_tensor 是你的视频帧张量形状为 [T, H, W, C]
# 这里创建一个随机张量作为示例
T, H, W, C 10, 224, 224, 3 # 例如10帧大小为224x224的RGB图像
video_tensor torch.randint(0, 256, (T, H, W, C), dtypetorch.uint8)# 指定输出视频文件的名称
filename output_video.mp4# 指定帧率fps
fps 30# 调用 write_video 函数保存视频
torchvision.io.write_video(filename, video_tensor, fps, video_codeclibx264)