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

相关推荐
晚霞的不甘13 小时前
CANN 在工业质检中的亚像素级视觉检测系统设计
人工智能·计算机视觉·架构·开源·视觉检测
一招定胜负15 小时前
入门MediaPipe:实现实时手部关键点检测
计算机视觉
sweetone15 小时前
LINN莲CLASSIK桌面音响微修
经验分享·音视频
一招定胜负16 小时前
新手入门MediaPipe系列:手势识别+姿态检测+脸部关键点检测
计算机视觉
一招定胜负17 小时前
基于dlib和OpenCV的人脸替换技术详解
opencv·计算机视觉
晚霞的不甘19 小时前
CANN 编译器深度解析:UB、L1 与 Global Memory 的协同调度机制
java·后端·spring·架构·音视频
空白诗19 小时前
CANN ops-nn 算子解读:Stable Diffusion 图像生成中的 Conv2D 卷积实现
深度学习·计算机视觉·stable diffusion
lxs-20 小时前
CANN计算机视觉算子库ops-cv全面解析:图像处理与目标检测的高性能引擎
图像处理·目标检测·计算机视觉
美狐美颜SDK开放平台20 小时前
多终端适配下的人脸美型方案:美颜SDK工程开发实践分享
人工智能·音视频·美颜sdk·直播美颜sdk·视频美颜sdk
饭饭大王6661 天前
CANN 生态深度整合:使用 `pipeline-runner` 构建高吞吐视频分析流水线
人工智能·音视频