opencv裁剪视频区域

import cv2

打开视频文件

video_path = 'input.mp4'

cap = cv2.VideoCapture(video_path)

获取视频的帧率、宽度和高度

fps = int(cap.get(cv2.CAP_PROP_FPS))

width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))

height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))

定义裁剪区域 (x, y, w, h)

x, y, w, h = 100, 100, 400, 300 # 你可以根据需要调整这些值

创建视频写入对象

output_path = 'output.mp4'

fourcc = cv2.VideoWriter_fourcc(*'mp4v') # 编码器

out = cv2.VideoWriter(output_path, fourcc, fps, (w, h))

while cap.isOpened():

ret, frame = cap.read()

if not ret:

break

裁剪帧

cropped_frame = frame[y:y+h, x:x+w]

写入裁剪后的帧到输出视频

out.write(cropped_frame)

显示裁剪后的帧(可选)

cv2.imshow('Cropped Frame', cropped_frame)

if cv2.waitKey(1) & 0xFF == ord('q'):

break

释放资源

cap.release()

out.release()

cv2.destroyAllWindows()

print(f"裁剪后的视频已保存到 {output_path}")

裁剪用opencv比较方便,因为opencv可视化 比较方便 ,

相关推荐
中议视控41 分钟前
RTSP和RTSM编码推送软件让中控系统控制实现可视化播控
网络·分布式·物联网·5g·音视频
Theodore_10224 小时前
深度学习(11):偏差与方差诊断、学习曲线
人工智能·笔记·深度学习·神经网络·机器学习·计算机视觉
LLM精进之路5 小时前
频域+特征融合:深度学习的黄金组合,顶会顶刊的快速通道
人工智能·计算机视觉·目标跟踪
愚公搬代码6 小时前
【愚公系列】《剪映+DeepSeek+即梦:短视频制作》025-字幕:用文字来美化画面(添加字幕)
音视频
zl_vslam7 小时前
SLAM中的非线性优-3D图优化之绝对位姿SE3约束四元数形式(十九)
人工智能·算法·计算机视觉·3d
EasyCVR7 小时前
安防监控/视频存储/云存储平台EasyCVR全场景智能视频监控解决方案深度解析
音视频
AI科技星7 小时前
基于wr/c + h/c = 1的螺旋线矢量特性及应用分析
c语言·开发语言·人工智能·opencv·算法·计算机视觉·r语言
呆萌小新@渊洁8 小时前
音频识别入门内容
macos·音视频·xcode
云边散步9 小时前
godot2D游戏教程系列二(20)
笔记·学习·音视频
唯创知音9 小时前
低BOM、高集成:WT2605A8-24SS蓝牙音频芯片在电动牙刷中的应用方案
音视频·wt2605a·蓝牙音频芯片·电动牙刷方案