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可视化 比较方便 ,

相关推荐
jndingxin28 分钟前
OpenCV CUDA模块中矩阵操作------降维操作
人工智能·opencv
Trent19851 小时前
影楼精修-肤色统一算法解析
图像处理·人工智能·算法·计算机视觉
科技小E4 小时前
EasyRTC嵌入式音视频通信SDK打造带屏IPC全场景实时通信解决方案
人工智能·音视频
jndingxin4 小时前
OpenCV CUDA模块中矩阵操作------归一化与变换操作
人工智能·opencv
kyle~4 小时前
计算机视觉---目标检测(Object Detecting)概览
人工智能·目标检测·计算机视觉
双翌视觉5 小时前
机器视觉对位手机中框点胶的应用
计算机视觉·机器视觉·视觉对位·视觉软件
白熊1885 小时前
【计算机视觉】OpenCV实战项目:基于OpenCV的车牌识别系统深度解析
人工智能·opencv·计算机视觉
胡耀超6 小时前
霍夫圆变换全面解析(OpenCV)
人工智能·python·opencv·算法·计算机视觉·数据挖掘·数据安全
jndingxin7 小时前
OpenCV CUDA 模块中用于在 GPU 上计算两个数组对应元素差值的绝对值函数absdiff(
人工智能·opencv·计算机视觉
硅谷秋水7 小时前
学习以任务为中心的潜动作,随地采取行动
人工智能·深度学习·计算机视觉·语言模型·机器人