眼睛遥控器¶
Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.
本项目基于Quectel Pi H1智能主控板开发,利用其强大的计算能力和多媒体处理能力,实现低延迟、高准确率的眼部追踪功能。
眼睛遥控器是一种智能控制系统,可根据用户的睁闭眼状态和注视方向控制视频播放:注视屏幕时保持播放,闭眼或离开屏幕时自动暂停。
核心功能:
当检测到用户睁眼并注视屏幕时,系统自动播放或恢复视频播放。
当检测到用户闭眼、视线移开屏幕或离开屏幕时,系统立即暂停视频播放。
开发资源汇总¶
备注
以下开发配件仅供参考,实际配置可能因开发环境而异。例如,通过SSH远程连接进行开发时,无需使用USB扩展坞;显示屏可根据需要替换,但替换件应满足接口和规格要求。
开发配件清单¶
配件名称 |
数量 |
规格参数 |
|---|---|---|
Quectel Pi H1智能主控板 |
1块 |
|
USB-C电源适配器 |
1个 |
27W USB Type-C接口充电器;线长:1.2米;中规PD电源;适用于树莓派5代 |
Micro HDMI线 |
1根 |
规格:Micro HDMI 2.0;线长:1米;接口:HDMI-A(公头)转HDMI-D(公头) |
网线 |
1根 |
线长:1米;传输速率:千兆 |
CPU散热风扇(可选) |
1个 |
|
2PIN PH1.25接口喇叭 |
1个 |
2030腔体喇叭;8Ω 2W;方形喇叭;高音质小体积扬声器;2PIN PH1.25接口 |
扩展坞(可选) |
1个 |
|
USB摄像头模块 |
1个 |
|
显示屏 |
1个 |
24英寸HDMI显示器 |
配件实物参考¶
快速上手¶
开发准备¶
Quectel Pi H1出厂预装Debian 13操作系统,通常无需重新烧录系统镜像。按照以下步骤操作即可:
硬件连接¶
按照以下步骤完成所有硬件连接(步骤编号与下方接口示意图中的标注一一对应):
显示连接:将Micro HDMI线一端连接至智能主控板的Micro HDMI接口,另一端连接至显示器的HDMI接口。
网络连接:确保路由器已连接互联网。将网线的一端连接到智能主控板的千兆以太网端口,另一端连接到路由器的以太网端口。
输入设备连接:将USB键盘、鼠标接入扩展坞的USB接口,再将扩展坞接入智能主控板的USB接口;若使用无线输入设备,将接收器插入扩展坞的USB接口即可;然后把OV5693摄像头模块接入智能主控板的另一个USB接口。
供电连接:将USB-A电源线的USB-A端接入电源适配器,USB-C端接入智能主控板的电源口(通常标注 POWER IN)。
散热风扇连接:先将散热风扇的排线插入智能主控板的FAN插槽中,再将散热器两端固定在主控板预留插孔中。
喇叭连接:将2PIN PH1.25接口的喇叭连接到智能主控板的SPK插槽中。
连接完成参考图¶
备注
完成上述连接后,设备后续关机或重启时无需断开摄像头、扬声器、显示器等已连接配件,保持其连接状态即可。
项目实现¶
在智能主控板上打开终端,使用 git 克隆项目代码。
sudo apt update && sudo apt install -y git
git clone https://github.com/Quectel-Pi/demo-eye-remote-control.git
执行 git clone 后,当前目录下应生成 demo-eye-remote-control 文件夹。
在智能主控板终端依次执行以下命令,终端显示 Deployment complete 则说明部署完成。
cd demo-eye-remote-control
sudo chmod 755 install.sh
./install.sh
如果执行 ./install.sh 过程中报错,或终端未显示 Deployment complete,请先不要继续执行后续步骤。建议先确认网络连接正常,再返回项目根目录重新执行一次 install.sh。
重新打开终端并验证Python版本。若输出为 Python 3.10.15,则表示Python环境符合要求。
python3 --version
运行程序¶
在 demo-eye-remote-control 路径下执行 ./start.sh 启动脚本。
cd demo-eye-remote-control/
./start.sh
使用说明¶
基本操作流程¶
启动程序: 程序启动后会自动开启摄像头并开始检测。
加载视频: 点击 选择视频文件 加载想要播放的视频。
开始观看: 系统会根据用户的视线状态自动控制视频播放或暂停。
切换模式: 可切换到全屏播放模式,以获得更好的观看体验。
界面功能说明¶
全屏模式: 按 F11 或点击界面上的全屏按钮进入全屏模式。
全屏播放模式: 全屏播放视频,并根据实时识别结果控制视频播放。
摄像头开关: 可随时开启或关闭摄像头。
检测开关: 可手动启用或禁用眼部检测功能。
标记点显示: 可视化显示眼部关键点和检测结果。
控制逻辑详解¶
状态 |
行为 |
说明 |
|---|---|---|
注视屏幕 + 眼睛睁开 |
继续播放 |
系统检测到用户正在观看 |
闭眼或视线移开 |
自动暂停 |
离开或闭眼时暂停播放 |
人脸离开摄像头 |
自动暂停 |
超过1秒未检测到人脸 |
常见问题及解决方案¶
摄像头无法识别¶
现象:
No available camera device found
解决方案:
检查摄像头是否正确连接到USB接口。
使用以下命令检查摄像头是否被识别:
ls -la /dev/video*
尝试使用其他USB接口。
如果仍无法识别,请将摄像头连接到带独立电源的USB集线器,并为集线器接通电源。
重新插拔USB摄像头。
运行main.py提示No module named cv2¶
现象:
ModuleNotFoundError: No module named 'cv2'
解决方案:
该问题通常表示 install.sh 脚本未执行成功或依赖未安装完整。请返回项目根目录,重新执行安装脚本:
cd demo-eye-remote-control
./install.sh
应用演示¶
技术支持与贡献¶
如在使用过程中遇到问题,欢迎在 移远官方论坛 提交技术咨询,我们的技术支持团队将及时为您解答。
项目开源地址:https://github.com/Quectel-Pi/demo-eye-remote-control
欢迎提交Issue反馈问题,或提交Pull Request改进代码。