533浏览
查看: 533|回复: 0

【试用测评】pinpong板——cv2人脸检测控制RGB灯

[复制链接]

IMG_20210501_162757.jpg


【pinpong板】
PinPong Board是一款专为学习Python语言而设计的课堂类教学主板,可以满足用户所有需求,不仅可以用来制作智能检测设备,还可以制作成无线通讯设备,实现智能家居以及人工智能等。
一、产品特点
1、PinPong Board完全兼容传统的Arduino,还在Arduino原有功能的基础上集成了2路电机驱动、OLED显示、红外接收/发射、光线传感器、声音传感器、温湿度传感器、陀螺仪等新型传感器等硬件功能。
2、WiFi与局域网相连接可以实现无线下载程序功能,让你摆脱USB线的束缚。远距离的更新程序,同一个局域网内的设备可以进行无线传输,主从机设置,甚至一个PC端同时控制局域网内的所有设备。
3、基于Python编程,提供PinPong使用教程及大量的example,方便学习使用Python驱动硬件。
4、多元化编程方式和编程平台,可依据学习情况选择Python图形化编程、Python语言编程不同的编程方式;Mind+、Python等编程平台为开发者提供了极大的自由度和支持准备。

【opencv-Python】

OpenCV是一个高级的图像处理库。我们可以使用OpenCV库来处理视频文件,或进行一些高级的图像处理,如人脸识别、运动跟踪等。

【程序代码】

  1. import cv2
  2. import numpy as np
  3. from pinpong.board import Board,Pin,NeoPixel
  4. NEOPIXEL_PIN = Pin.D9
  5. PIXELS_NUM = 1 #灯数
  6. Board("uno").begin()  #初始化,选择板型和端口号,不输入端口号则进行自动识别
  7. np = NeoPixel(Pin(NEOPIXEL_PIN), PIXELS_NUM)
  8. # Step 1. Define detect function
  9. face_cascade = cv2.CascadeClassifier('../../environment/Python3.6.5-64/Lib/site-packages/cv2/data/haarcascade_frontalface_alt.xml')
  10. def detect_face(img):
  11.     img_copy = img.copy()
  12.     face_rects = face_cascade.detectMultiScale(img_copy)
  13.     for (x, y, w, h) in face_rects:
  14.         cv2.rectangle(img_copy, (x, y), (x+w, y+h), (255, 255, 255), 3)
  15.         if x>300:
  16.              np[0] = (255, 0 ,0) #设置RGB灯为红色
  17.         if x<180:
  18.              np[0] = (0, 255 ,0) #设置RGB灯为绿色
  19.         if x>=180 and x<=300 :
  20.              np[0] = (0, 0 ,255) #设置RGB灯为蓝色色
  21.     return img_copy
  22. # Step 2. Call the cam
  23. cap = cv2.VideoCapture(0)
  24. while True:
  25.     ret, frame = cap.read(0)
  26.     frame = detect_face(frame)
  27.     cv2.imshow('Video Face Detection', frame)
  28.     c = cv2.waitKey(1)
  29.     if c == 27:
  30.         break
  31. cap.release()
  32. cv2.destroyAllWindows()
复制代码

【演示视频】


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2022 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail