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

相关推荐
CoovallyAIHub4 天前
仿生学突破:SILD模型如何让无人机在电力线迷宫中发现“隐形威胁”
深度学习·算法·计算机视觉
CoovallyAIHub4 天前
从春晚机器人到零样本革命:YOLO26-Pose姿态估计实战指南
深度学习·算法·计算机视觉
CoovallyAIHub4 天前
Le-DETR:省80%预训练数据,这个实时检测Transformer刷新SOTA|Georgia Tech & 北交大
深度学习·算法·计算机视觉
CoovallyAIHub4 天前
强化学习凭什么比监督学习更聪明?RL的“聪明”并非来自算法,而是因为它学会了“挑食”
深度学习·算法·计算机视觉
CoovallyAIHub4 天前
YOLO-IOD深度解析:打破实时增量目标检测的三重知识冲突
深度学习·算法·计算机视觉
REDcker5 天前
WebCodecs VideoDecoder 的 hardwareAcceleration 使用
前端·音视频·实时音视频·直播·webcodecs·videodecoder
gihigo19985 天前
基于TCP协议实现视频采集与通信
网络协议·tcp/ip·音视频
山河君6 天前
四麦克风声源定位实战:基于 GCC-PHAT + 最小二乘法实现 DOA
算法·音视频·语音识别·信号处理·最小二乘法·tdoa
这张生成的图像能检测吗6 天前
(论文速读)XLNet:语言理解的广义自回归预训练
人工智能·计算机视觉·nlp·注意力机制
十铭忘6 天前
自主认知-行动1——架构
人工智能·计算机视觉