回答

收藏

《2024 DigiKey 汽车应用创意挑战赛》车载姿态识别

#竞赛 #竞赛 929 人阅读 | 0 人回复 | 2025-01-22


一、项目名称:
基于树莓派的车载姿态识别娱乐系统

二、项目概述:
该项目基于树莓派娱乐系统桌面,通过摄像头获取人体姿态来传达指令。
1、激活方式:语音激活,通过MIC获取指定关键词激活姿态检测;眼动激活:检测眼球是否看向摄像激活姿态检测。
2、姿态检测:利用OPENCV检测手臂手掌手指的位置获取姿态信息;例如手掌五指张开,博放音乐等。
3、自动休眠,在读取完一条指令后进入休眠,以防误识别;进入低功耗模式降低不必要的能量损耗。

项目流程:
1. 烧录系统
去树莓派官方下载最新的Raspbian OS
2. 安装摄像头
按照下面的步骤依次安装好摄像头,注意蓝色固定硬片的位置永远靠近锁扣。
拔锁扣的时候轻微用力,不然一不小心就拉脱了。
3. 启用摄像头
树莓派上安装好硬件启动后,需要在系统中启用摄像头。
在启动好树莓派后,打开一个终端:
输入:
1. sudo raspi-config
然后重启树莓派
4. 配置系统基本环境并更新系统软件仓库索引
重启好以后登陆系统,打开终端也可以。
5. 创建虚拟环境并安装对应的库文件
在前面都准备好了的情况下,开始创建虚拟环境并激活它
1. virtualenv -p python3 venv
安装openCV库和Mediapipe库:
1. pip install opencv-python
2. pip install mediapipe-rpi4
6. 编写测试摄像头代码
1. vim camera.py
1. import cv2
2. import time
3.
4. pTime = 0
5. cap = cv2.VideoCapture(0)
6. while True:
7.     ret, frame = cap.read()   
8.     if cv2.waitKey(1) & 0xFF == 27:
9.         break
10. cap.release()
执行:
1. python camera.py
就会显示:
7. 通过Mediapipe的hands solution来完成手部的Landmark(地标?)的识别。
这里面,会通过Mediapipe的drawing.utils 来实现绘制骨架,并给手指舔一抹红色
下面我们只需要修改之前的代码来实现:
1. import cv2
2. import time
3. import mediapipe as mp
4.
5. # 定义变量previous time,为了测试fps使用
6. pTime = 0
执行一下

三、作品实物图

四、演示视频
如附件

五、项目文档
如附件



file.rar

1.15 MB, 下载次数: 2

分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条