RealBasicVSR高清处理视频

autodl做了镜像:高清RealBasicVSR
首先在剪映将视频剪好导出,最多是720像素的,不然后面超分的时候会爆显存。剪映视频也最好是双数帧数结尾的,不然超分的时候单数图片会报错->RuntimeError: non-empty 3D or 4D input tensor expected but got ndim: 4
首先使用脚本把视频分割成图片
python 复制代码
import cv2
import os

# 视频文件所在目录
video_directory = r'D:\hc\dongtaibizhi\test'
# 获取目录中所有的mp4文件
video_files = [f for f in os.listdir(video_directory) if f.endswith('.mp4')]

for video_file in video_files:
    video_path = os.path.join(video_directory, video_file)

    # 创建以视频名命名的文件夹来保存图片
    output_folder = os.path.join(video_directory, os.path.splitext(video_file)[0])
    os.makedirs(output_folder, exist_ok=True)

    # 打开视频文件
    cap = cv2.VideoCapture(video_path)

    # 获取视频的原始帧率
    original_fps = int(cap.get(cv2.CAP_PROP_FPS))

    # 计算每秒需要提取的帧数
    frames_per_second = 30

    # 计算跳帧间隔
    frame_skip = max(1, original_fps // frames_per_second)

    # 初始化帧计数器
    frame_count = 0

    while True:
        ret, frame = cap.read()
        if not ret:
            break

        if frame_count % frame_skip == 0:
        # 保存图片
            image_filename = os.path.join(output_folder, f'frame_{frame_count:04d}.jpg')
            cv2.imwrite(image_filename, frame)

        frame_count += 1

    # 释放视频对象
    cap.release()
    print(f'已成功保存 {video_file} 的图片到 {output_folder}')
比如说现在图片集都放在ss3720这个文件夹里,那么运行命令进行图片高清化
python 复制代码
python inference_realbasicvsr.py configs/realbasicvsr_x4.py checkpoints/RealBasicVSR_x4.pth data/ss3720 results/ss3720  --max_seq_len=2
超分后使用~/RealBasicVSR-master/results,下的脚本进行图片合成视频(要改脚本里的文件路径)
python 复制代码
python image2video.py
参考网址:https://blog.csdn.net/zhiweihongyan1/article/details/124645615
相关推荐
换个昵称都难4 分钟前
webrtc PeerConnection 模块介绍
音视频·webrtc
潜创微科技1 小时前
4K60 over IP 方案简介
网络·嵌入式硬件·网络协议·tcp/ip·音视频
超哥--1 小时前
B站视频内容智能分析系统(三):B站视频自动采集
java·开发语言·音视频·ai编程
_李小白3 小时前
【android opencv学习笔记】Day 32:直线检测之霍夫变换
android·opencv·学习
我最爱吃鱼香茄子5 小时前
终极方案:JetBrains IDE永久解放C盘空间
计算机视觉·性能优化·电脑·笔记本电脑·intellij-idea·程序员创富·webstorm
玖釉-6 小时前
Vulkan 离屏渲染详解:从 Framebuffer 到后处理、阴影贴图与 Render Texture
c++·windows·计算机视觉·图形渲染
路人甲3267 小时前
SONIC: Supersizing Motion Tracking for Natural Humanoid Whole-Body Control
人工智能·深度学习·计算机视觉·机器人·具身智能
程序员正茂7 小时前
EasyAR使用OpenCV下USB摄像头作为自定义相机
opencv·unity·easyar
_李小白7 小时前
【android opencv学习笔记】Day 31:提取轮廓之Canny算法
android·opencv·学习
localbob8 小时前
日语视频 SRT 字幕生成软件下载:日语视频本地自动翻译SRT字幕生成、日语视频自动翻译 Faster Whisper v1.7 下载与使用教程(含AMD显卡支持)
whisper·音视频·机器翻译·日语字幕翻译·日语视频翻译·本地ai翻译日语视频