当前位置: 首页 > wzjs >正文

国家安全人民防线建设网站搜索引擎入口官网

国家安全人民防线建设网站,搜索引擎入口官网,上海专业做网站公,网站建设方式优化本次要学视频检测,我们先回顾一下图片的人脸检测建筑兔零基础自学python记录16|实战人脸识别项目——人脸检测05-CSDN博客 我们先把上文中代码复制出来,保留红框的部分。 ​ 然后我们来看一下源代码: import cv2 as cvdef face_detect_demo(…

   本次要学视频检测,我们先回顾一下图片的人脸检测建筑兔零基础自学python记录16|实战人脸识别项目——人脸检测05-CSDN博客

    我们先把上文中代码复制出来,保留红框的部分。

 然后我们来看一下源代码:

import cv2 as cvdef face_detect_demo(img):gary = cv.cvtColor(img,cv.COLOR_BGR2GRAY)face_detect = cv.CascadeClassifier('M:/python/pythoninstall/Lib/site-packages/cv2/data/haarcascade_frontalface_alt.xml')face = face_detect.detectMultiScale(gary)for x,y,w,h in face:cv.rectangle(img,(x,y),(x+w,y+h),color=(0,0,255),thickness=2)cv.imshow('result',img)#读取摄像头
cap = cv.VideoCapture(0)
#循环
while True:flag,frame = cap.read()if not flag:breakface_detect_demo(frame)if ord('q') == cv.waitKey(1):breakcv.destroyAllWindows()#释放摄像头
cap.release()

依次进行解读:

(1)cv.VideoCapture()

      可以接受一个参数,用于指定视频源:

  • 整数类型:表示摄像头设备的编号,从 0 开始。例如,cv.VideoCapture(0) 表示打开默认的摄像头。
  • 字符串类型:表示本地视频文件的路径或网络视频流的 URL。例如,cv.VideoCapture('video.mp4') 表示打开名为 video.mp4 的本地视频文件。
#举例:
#(1)导入视频路径
cap = cv.VideoCapture('http://example.com/stream.m3u8')
cap = cv.VideoCapture('path/to/your/video.mp4')
#(2)导入摄像头
cv.VideoCapture(0)

 (2)flag,frame=cap.read()

   从指定的视频源(可以是摄像头、本地视频文件或者网络视频流)中读取一帧图像

         每次调用时它会尝试从视频源中获取当前的视频帧,并将其作为一个图像对象返回。

该方法返回两个值,通过元组解包的方式分别赋值给 flagframe

flag:一个布尔类型的值,用于指示是否成功读取到视频帧

           如果成功读取到帧,flag 的值为 True

           如果失败(例如视频结束、视频源断开连接等情况),flag 的值为 False

frame:一个 NumPy 数组,表示读取到的视频帧图像。

            该数组的形状通常为 (高度, 宽度, 通道数),通道数一般为 3(代表 RGB 三个颜色通道),图像的像素值范围通常是 0 到 255。

补充:在这里我们会发现flag,frame两个值不是写在括号里的,反而是在=之前的。这和我们之前熟悉的cv.cvtColor(img,cv.COLOR_BGR2GRAY)这样括号里的写法有什么区别呢?

括号里的值=x,例如数学里见过的sin(x)。

    所以 cv.cvtColor(img,cv.COLOR_BGR2GRAY)中我们可理解为:    x1=img,x2=cv.COLOR_BGR2GRAY

等于号左边的值=y,例如数学里见过的y=sin(x)

 所以flag,frame=cap.read()我们可理解为:

y1=flag,y2=frame

(3)解读循环代码

#本次视频识别代码
while True:flag,frame = cap.read()if not flag:breakface_detect_demo(frame)if ord('q') == cv.waitKey(1):break#对比:之前图像识别代码
while True:if ord('q') == cv.waitKey(0):break

     对比之后可以看到增加的代码主要是关于flag和frame的,其中flag:读帧与否,frame:帧。这一段代码其实执行了两个循环命令,即下图中的蓝框和红框。

     由此可以看到两个循环:

    1.持续读帧

    2.对帧检测人脸

    在这段循环中还有两个调用,如下图:

   1.调用摄像头

   2.调用人脸识别参数

    综上我们可以对整个代码有了整体的结构掌握:

 让我们打开屏幕摄像头试试~

 可以看到已经可以识别屏幕中手机中的人脸照片了,并且随着移动可以动态识别。

   接着我们尝试导入一段视频试一下~

首先获取一段视频,然后保存到py的workspace

将路径输入代码,运行即可。

 可以看到成功识别了节目中的人物~可以点击视频进行观看~

人脸识别测试

(4)总结:

cv.VideoCapture()视频路径

flag,frame=cap.read()读取视频,flag:读帧与否,frame:帧

http://www.dtcms.com/wzjs/268841.html

相关文章:

  • 怎么提高网站的权重海豹直播nba
  • 技术大全网苏州seo关键词优化报价
  • 网站为什么要挂服务器个人代运营一般怎么收费
  • 做app网站公司哪家好推广app赚佣金平台
  • 金顺广州外贸网站建设网址域名大全
  • 做网站现在赚钱吗学it一年的学费大概是多少
  • 建筑公司logo兰州seo网站建设
  • 怎样在外管局网站做延期付款网站seo排名优化价格
  • 游戏网站建设多少有链接的网站
  • 网页设计网站含义百度指数查询移动版
  • 专业的家居行业网站制作东莞网站制作公司联系方式
  • 临清市住房和城乡建设局网站系统优化的意义
  • 用什么软件做网站最好企业qq和个人qq有什么区别
  • 遵义网站建设seo没什么作用了
  • 网站开发论文摘要seo型网站
  • 湖南土特产销售网网站建设制作南宁seo主管
  • 徐州网络推广公司网络优化app哪个好
  • 怎么创建一个网站卖东西怎样在百度上做广告
  • 上海建站优化长沙网站制作公司哪家好
  • 做nba网站的素材如何自创网站
  • 怎么做网站代码东莞网站推广公司黄页
  • 做棋牌网站团队简述seo
  • 常州天狼网站建设优化网站排名工具
  • 苏州吴江做网站2021年网络热点舆论
  • 为国外客户做网站建设百度网登录入口
  • 有没有专门做蛋糕的网站百度我的订单app
  • 网上销售平台seo研究中心超逸seo
  • 国度网络网站建设百度广告推广怎么收费
  • 动态网站开发服务器端脚本语言比优化更好的词是
  • 网站后台怎么做alt标签淄博头条新闻今天