Python数据分析(OpenCV视频处理)

处理视频我们引入的还是numpy 和 OpenCV 的包

引入方式如下:

import numpy as np

import cv2

我们使用OpenCV来加载本地视频,参数就是你视频的路径就可以

#加载视频

cap = cv2.VideoCapture('./1.mp4')

下面我们进行读取视频

#读取视频

flag,frame = cap.read()

读取视频的方法会返回两结果,flag表示是否读完 frame是读取的图像

我们可以获取图像的宽高等等

#获取帧数

cap.get(cv2.CAP_PROP_FPS)

#获取宽度

cap.get(cv2.CAP_PROP_FRAME_WIDTH)

下面是两个例子

第一个读取本地视频,并识别视频中的人脸,这里获取人脸的特征数据在上篇文章中已说明,这里不多说

python 复制代码
#读取视频
cap = cv2.VideoCapture('./1.mp4')
#添加人脸特征
detector = cv2.CascadeClassifier('./haarcascade_frontalface_default.xml')
#读取视频并进行人脸识别
while cap.isOpened():
    flag,frame = cap.read()
    gray = cv2.cvtColor(frame,code=cv2.COLOR_BGR2GRAY)
    face_zone = detector.detectMultiScale(gray,scaleFactor=1.2,minNeighbors=5)
    for x,y,w,h in face_zone:
        cv2.circle(frame,center=(x+w//2,y+h//2),radius=w//2,color =[0,0,255],thickness=2)
    if flag == False:
        break;
    cv2.imshow('ll',frame)
    if ord('q') == cv2.waitKey(81):
        break
cv2.destroyAllWindows()
cap.release()

第二个例子, 我们调用本地摄像头,识别人脸,并将视频储存到本地

python 复制代码
#cv2 打开本地摄像头  识别人脸 并保存视频
cap = cv2.VideoCapture(0)
w = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))+1
h = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))+1
#保存的视频格式有很多种,大家可以自己从网上查一下对应的标识
videoWriter = cv2.VideoWriter('./my.mp4',cv2.VideoWriter_fourcc('M','P','4','v'),24,(w,h))
detector = cv2.CascadeClassifier('./haarcascade_frontalface_default.xml')
while cap.isOpened():
    falg,frame = cap.read()
    if falg == False:
        break;
    gray = cv2.cvtColor(frame,code=cv2.COLOR_BGR2GRAY)
    face_zone = detector.detectMultiScale(gray,scaleFactor=1.2,minNeighbors=5)
    for x,y,w,h in face_zone:
        cv2.circle(frame,circle=(x+w//2,y+h//2),radius=w//2,color =[0,0,255],thickness=2)
    videoWriter.write(frame)
    if falg == False:
        break;
    cv2.imshow('ll',frame)
    if ord('q') == cv2.waitKey(20):
        break;
cv2.destroyAllWindows();
cap.release();
videoWriter.release();
相关推荐
蜂蜜黄油呀土豆2 小时前
Agent 循环:观察、思考、行动(ReAct 入门)
python·ai·大模型·react·js
SilentSamsara2 小时前
特征工程系统方法论:编码、分箱、交互特征与特征选择
开发语言·人工智能·python·机器学习·青少年编程·信息可视化·pandas
财经资讯数据_灵砚智能2 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年6月8日
大数据·人工智能·python·ai·信息可视化·自然语言处理·灵砚智能
geovindu2 小时前
python:Coroutines Pattern
开发语言·python·设计模式·协程模式
A.说学逗唱的Coke2 小时前
【运维专题】playbooks保姆级使用指南
运维·开发语言·python
SelectDB技术团队2 小时前
预约发布会|核心产品力首发,如何构建面向 Agent 时代的企业级数据引擎
数据库·数据仓库·人工智能·数据分析·可观测·apache doris·selectdb
2601_961845153 小时前
2026四级作文预测题|英语四级写作押题+提纲PDF
java·c语言·数据库·c++·python·pdf·php
YangYang9YangYan3 小时前
民办本科大数据专业学习数据分析的价值分析
大数据·学习·数据分析
babe小鑫3 小时前
数据分析在运营行业的价值分析
数据挖掘·数据分析
高洁013 小时前
用知识图谱重构搜索引擎
人工智能·python·数据挖掘·virtualenv·知识图谱