赞
踩
学习使用AI人脸识别功能
检测摄像头图像中人脸,并打印检测出结果。
参考代码文件可以在资料包文件夹“智能小车mpy例程\基础实验\11-AI摄像头实验\03-人脸检测”文件夹下的main.py 下面为完整代码内容:
''' AI摄像头实验-人脸检测 ''' from machine import Pin,Timer #导入Pin引脚和Time定时器模块 from lcd import LCD20 #导入2.0寸LCD模块 import cam #导入摄像头模块 import time import ai #导入AI模块 #颜色值定义,(R,G,B) 0~255代表颜色值 red = (255,0,0) #红色 green = (0,255,0) #绿色 blue = (0,0,255) #蓝色 white = (255,255,255) #白色 back = (0,0,0) #黑色 #创建LCD对象 dir 显示方向为竖屏,1、3竖屏,2、4屏横 ld=LCD20() #默认为竖屏1 # 整屏填充指定颜色 ld.fill(back) myCam = cam.OV2640() #创建摄像头对象 #设置摄像头尺寸240X240 myCam.framesize(cam.LCD240X240) #显示屏对应的分辨率 方便显示 myCam.set_hmirror(0) #设置摄像头水平镜像关闭 ''' 创建AI人脸检测 displayType: 显示方式为 1-LCD,2-WEB网页显示 ''' myAi = ai.faceDetection(displayType=1) #LCD显示方式 myAi.start() #启动AI检测 while True: mValue=myAi.read() #读取检测到数据 print(mValue) time.sleep_ms(100)
编写好程序后,运行程序或者上传main.py 到小车内部文件系统。可以断电自动运行程序。可以在显示屏看到摄像头拍摄画面,摄像头对准人脸检测,识别到人脸后打印出人脸特征坐标。
人脸识别功能可应用在考勤机上。我们小车的主控支持AI人脸识别,学习人脸识别的使用可以打造属于自己的考勤机。
通过按键录入人脸信息,并使用AI人脸识别功能识别出录入的人脸ID
通过按键控制录入人脸信息,录入成功后调试窗口打印出录入的ID,摄像头采集图像并识别录入的人脸,检测到在屏幕显示出ID。
参考代码文件可以在资料包文件夹“智能小车mpy例程\基础实验\11-AI摄像头实验\04-人脸识别”文件夹下的main.py 下面为完整代码内容:
''' AI摄像头实验-人脸识别 ''' from machine import Pin,Timer #导入Pin引脚和Time定时器模块 from lcd import LCD20 #导入2.0寸LCD模块 import cam #导入摄像头模块 import time import ai #导入AI模块 #颜色值定义,(R,G,B) 0~255代表颜色值 red = (255,0,0) #红色 green = (0,255,0) #绿色 blue = (0,0,255) #蓝色 white = (255,255,255) #白色 back = (0,0,0) #黑色 #创建LCD对象 dir 显示方向为竖屏,1、3竖屏,2、4屏横 ld=LCD20() #默认为竖屏1 # 整屏填充指定颜色 ld.fill(back) myCam = cam.OV2640() #创建摄像头对象 #设置摄像头尺寸240X240 myCam.framesize(cam.LCD240X240) #显示屏对应的分辨率 方便显示 myCam.set_hmirror(0) #设置摄像头水平镜像关闭 #创建按键用于按键录入人脸 key = Pin(0,Pin.IN, Pin.PULL_UP) #构建按键控制对象,对应IO0,配置为输入上拉模式 led = Pin(46,Pin.OUT) #构建LED控制对象,对应IO为46 ''' 创建AI人脸识别 按键录入人脸 displayType: 显示方式为 1-LCD,2-WEB网页显示 ''' myAi = ai.faceRecognition(displayType=1) #LCD显示方式 myAi.start() #启动人脸识别 while True: if key.value() == 0: led.on() #打开指示灯 while True: faceId = myAi.enroll() #人脸录入 print("fa->"+ str(faceId)) if key.value() == 0: led.off() #关闭指示灯 break if faceId: #录入成功退出 led.off() #关闭指示灯 break mValue=myAi.recognize() #人脸检测 print(mValue) time.sleep_ms(10)
运行程序后,长按按键等待绿色LED亮后松开按键,进入录入人脸信息,摄像头对准要录入的人脸,录入成功后,系统自动返回录入成功对应的ID,且退出录入模式,进入识别人脸模式。否则中途再次长按下按键绿色LED熄灭后退出录入人脸信息,进入正常识别模式。
使用识别人脸:摄像头对准人脸静止几秒钟后,提示录入成功。进入识别人脸识别模式,摄像头对准要识别的人脸可以准确识别出对于的人脸ID。
使用摄像头识别图像中的猫脸,并在显示屏显示,识别到后出现矩形方框。
参考代码文件可以在资料包文件夹“智能小车mpy例程\基础实验\11-AI摄像头实验\05-猫脸检测”文件夹下的main.py 以及猫脸图片,下面为完整代码内容:
''' AI摄像头实验-猫脸检测 ''' from machine import Pin,Timer #导入Pin引脚和Time定时器模块 from lcd import LCD20 #导入2.0寸LCD模块 import cam #导入摄像头模块 import time import ai #导入AI模块 #颜色值定义,(R,G,B) 0~255代表颜色值 red = (255,0,0) #红色 green = (0,255,0) #绿色 blue = (0,0,255) #蓝色 white = (255,255,255) #白色 back = (0,0,0) #黑色 #创建LCD对象 dir 显示方向为竖屏,1、3竖屏,2、4屏横 ld=LCD20() #默认为竖屏1 # 整屏填充指定颜色 ld.fill(back) myCam = cam.OV2640() #创建摄像头对象 #设置摄像头尺寸240X240 myCam.framesize(cam.LCD240X240) #显示屏对应的分辨率 方便显示 myCam.set_hmirror(0) #设置摄像头水平镜像关闭 ''' displayType: 显示方式为 1-LCD,2-WEB网页显示 ''' myAi = ai.catDetection(displayType=1) #LCD显示方式 myAi.start() #启动AI检测 while True: mValue=myAi.read() #读取检测到数据 print(mValue) time.sleep_ms(100)
打开资料包文件夹路径“智能小车mpy例程\基础实验\11-AI摄像头实验\05-猫脸检测”文件夹下面打开”猫脸图片.jpeg”。运行程序,等待显示屏出现摄像头画面后,使用摄像头对准打开的猫脸图片进行识别,识别到后会在猫脸绘制出矩形方框。
相关代码及固件:
https://download.csdn.net/download/lu330274924/88549191
智能小车购买链接
技术支持抖音:易驱达Easy Drive Coming
淘宝官方商城:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-18887194911.15.135014bdaKI6mV&id=715385110550
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。