Python 将彩色视频转换为黑白视频(MP4-格式可选)

以下是使用 Python 将彩色视频转换为黑白电视风格的示例代码,主要借助了opencv-python库来实现:

python

python 复制代码
import cv2

def convert_to_black_and_white_video(input_video_path, output_video_path):
    # 打开视频文件
    cap = cv2.VideoCapture(input_video_path)

    # 获取视频的帧率、宽度和高度等信息
    fps = cap.get(cv2.CAP_PROP_FPS)
    width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
    height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))

    # 定义视频编解码器并创建VideoWriter对象
    fourcc = cv2.VideoWriter_fourcc(*'mp4v')
    out = cv2.VideoWriter(output_video_path, fourcc, fps, (width, height), isColor=False)

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

        # 将彩色帧转换为黑白
        gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

        # 将黑白帧写入输出视频文件
        out.write(gray_frame)

    # 释放资源
    cap.release()
    out.release()
    cv2.destroyAllWindows()

if __name__ == "__main__":
    input_video_path = "your_input_video.mp4"  # 替换为实际的输入视频路径
    output_video_path = "output_video.mp4"  # 替换为你想要的输出视频路径
    convert_to_black_and_white_video(input_video_path, output_video_path)

在上述代码中:

  1. 首先使用cv2.VideoCapture打开输入的彩色视频文件,并获取视频的帧率、宽度和高度等基本信息。
  2. 然后定义了输出视频的编解码器和相关参数,创建了cv2.VideoWriter对象用于将处理后的帧写入新的视频文件。这里设置isColor=False表示输出的是黑白视频。
  3. 在循环中,不断从输入视频中读取每一帧,使用cv2.cvtColor函数将彩色帧转换为黑白帧,再将黑白帧写入输出视频文件。
  4. 最后,释放视频读取和写入的相关资源。

请确保在运行代码之前已经安装了opencv-python库,可以通过pip install opencv-python进行安装。同时,将代码中的输入和输出视频路径替换为你实际使用的路径。

效果如下

相关推荐
小白银子1 小时前
零基础从头教学Linux(Day 52)
linux·运维·服务器·python·python3.11
AAA小肥杨3 小时前
基于k8s的Python的分布式深度学习训练平台搭建简单实践
人工智能·分布式·python·ai·kubernetes·gpu
lichong9514 小时前
Git 检出到HEAD 再修改提交commit 会消失解决方案
java·前端·git·python·github·大前端·大前端++
Tiny番茄4 小时前
31.下一个排列
数据结构·python·算法·leetcode
小白学大数据6 小时前
实战:Python爬虫如何模拟登录与维持会话状态
开发语言·爬虫·python
FriendshipT6 小时前
目标检测:使用自己的数据集微调DEIMv2进行物体检测
人工智能·pytorch·python·目标检测·计算机视觉
Sunhen_Qiletian6 小时前
基于OpenCV与Python的身份证号码识别案例详解
人工智能·opencv·计算机视觉
平谷一勺6 小时前
数据清洗-缺失值的处理
python·数据分析
末世灯光6 小时前
时间序列入门第一问:它和普通数据有什么不一样?(附 3 类典型案例)
人工智能·python·机器学习·时序数据
开心-开心急了6 小时前
Flask入门教程——李辉 第一、二章关键知识梳理(更新一次)
后端·python·flask