• 使用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

  • 相关阅读:
    RabbitMQ:六、网络分区
    RabbitMQ:五、高阶
    RabbitMQ:四、跨越集群
    数据结构:红黑树
    RabbitMQ:三、进阶
    面对对象多态的异常
    面向对象三大特征---多态
    面对对象继承的优点和缺点
    面对对象当中的代码块
    面对对象this关键字
  • 原文地址:https://www.cnblogs.com/liuli-warriors/p/13865635.html
Copyright © 2020-2023  润新知