zoukankan      html  css  js  c++  java
  • 使用python+opencv连接网络摄像头画人脸框

    # 获取rtsp流在 frame中实时检测
    import cv2
    
    
    faceCasCade = cv2.CascadeClassifier("Resources/haarcascade_frontalface_default.xml")
    # 这个rtsp 流是网络控摄像头进行连接的
    cap = cv2.VideoCapture("rtsp://用户名:密码@相机ip/")
    # 判断抓拍数据流是否开启
    if cap.isOpened():
         open, frame = cap.read()
    else:
         open = False
    # 当开启时open 为true
    while open:
         # 读取开启的数据流帧数
         ret, frame = cap.read()
         # 将人脸转换为灰色的图像   
         imgGray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 
         # 将获取的到的灰色人脸进行1比1的切割
         faces = faceCasCade.detectMultiScale(imgGray, 1.1, 4)
         # 设置长宽高进行人脸图形的切割
         for (x, y, w, h) in faces:
              cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)  # 绘制矩形人脸框
         if frame is None:
              break
         # 显示循环每一帧的图像进行放映 
         cv2.imshow("frame", frame)
         # 当话面正在进行时可以使用q 键进行退出
         if cv2.waitKey(1) & 0xFF == ord('q'):
              break
    cv2.destroyAllWindows()
    cap.release()

     需要进一步了解的可以去github进一步了解: 

        https://github.com/murtazahassan/Learn-OpenCV-in-3-hours

  • 相关阅读:
    QuartzQuartz定时任务
    jdbc模糊查询、分页查询、联合查询
    PreparedStatement
    web服务器简述
    JDBC基本操作
    RMI
    Http编程
    2020毕业季业务开发宝典
    程序设计流程图
    系统概要框图
  • 原文地址:https://www.cnblogs.com/liuli-warriors/p/13865635.html
Copyright © 2011-2022 走看看