OpenGlass智能眼镜DIY全流程:25美元零件,把普通眼镜变成AI识别终端
2026/8/15 19:49:25 网站建设 项目流程

OpenGlass智能眼镜DIY全流程:25美元零件,把普通眼镜变成AI识别终端

【免费下载链接】OpenGlassTurn any glasses into AI-powered smart glasses项目地址: https://gitcode.com/GitHub_Trending/op/OpenGlass

副标题:ESP32 S3开源方案实测,从买零件、刷固件到跑通人物识别与实时翻译,一份写给新手的完整路线图

OpenGlass是一个开源智能眼镜项目,目标很直接:用不到25美元的现成零件,把任何一副普通眼镜改造成具备AI能力的智能设备。它能记录你看到的东西、帮你记住见过的人、识别物体、翻译眼前的外文文本。整个方案基于ESP32 S3芯片,固件和软件栈全部开源,硬件DIY与代码定制两条路都能走。

一、先看两个真实使用场景,判断它适不适合你

场景一:从没碰过Arduino的新手小林花了半天时间完成了整个组装。他把一块Seeed Studio XIAO ESP32 S3模块固定到3D打印的眼镜支架上,接上一块250mAh的小电池,然后用Arduino IDE把固件刷进芯片。当他戴上眼镜、看向街边的外文路牌时,手机屏幕上出现了翻译好的中文——全程硬件成本不到两杯咖啡的价格。

场景二:想深度定制代码的开发者小李拿到项目后没有急着用,而是先看了prompts/generate.ts这个测试脚本。它能把项目自带的几十张测试照片批量跑过多个视觉模型,对比不同模型的描述质量。他据此把默认模型换成了更轻量的版本,识别速度提升了大约四成,整个改动只涉及一处配置。

这两个场景对应OpenGlass的两类用户:只想"用起来"的人,和想"改起来"的人。下面按"先体验、后拆解"的顺序展开。

二、项目亮点速览

  • 成本门槛低:整套硬件约25美元,远低于市售AI眼镜的定价。
  • 全链路开源:从ESP32 S3固件到前端Expo应用,代码都在仓库里,随意修改。
  • 模型可替换:默认走本地Ollama的moondream视觉模型,也可以换成llava、接入Groq或OpenAI。
  • 隐私可控:不依赖云端也能跑,本地推理时照片不出你的设备。
  • 模块化结构:换模型、改识别频率、调整采集逻辑,各改各的文件,互不干扰。

三、十分钟快速体验:先跑通软件端

硬件可以稍后再弄,软件端现在就能体验。整个过程只需要终端和浏览器。

第1步:克隆仓库并安装依赖

git clone https://gitcode.com/GitHub_Trending/op/OpenGlass cd OpenGlass yarn install

第2步:拉取本地视觉模型

ollama pull moondream:1.8b-v2-fp16

这个模型负责"看懂"摄像头拍到的画面,体积小、响应快,是新手入门最稳的选择。

第3步:配置密钥文件

打开sources/keys.ts,它是所有AI服务的配置入口。项目默认通过环境变量读取密钥,如果你不想配置环境变量,直接把空字符串替换成密钥即可:

export const keys = { groq: "你的Groq密钥", // 用于Llama 3问答 ollama: "http://localhost:11434/api/chat", // 本地模型地址 openai: "你的OpenAI密钥", // 用于高级图像识别 };

第4步:启动应用

yarn start

这是Expo项目,启动后按提示打开localhost链接,就能在浏览器里看到连接页面。此时没有硬件也能熟悉界面结构,等硬件到手后点"Connect to the device"即可配对。

上图来自项目prompts/series_1测试集:摄像头拍下的真实生活场景,会被视觉模型转成文字描述,用来验证各模型的识别准确度。

四、原理拆解:一条"输入→处理→输出"流水线

OpenGlass的工作方式可以用三段式流水线理解,比想象中简单。

输入端:眼镜负责采集。ESP32 S3模块上集成了摄像头和麦克风,固件firmware/firmware.ino初始化这些硬件,并通过BLE蓝牙把照片和音频流发送到你的手机或电脑。固件里还预留了三种音频编码方式(Opus、Mulaw、PCM),对应不同的前端应用。

处理端:应用负责调度。电脑或手机上的Expo应用收到数据后,交给sources/agent/Agent.ts处理。它会先调用视觉模型给每张照片生成一段文字描述,再把这些描述累积起来,作为问答的上下文。核心调用很简洁:

const resp = await axios.post(keys.ollama, { stream: false, model: 'moondream:1.8b-v2-fp16', messages: [{ role: 'user', content: 'Describe the scene', images: [toBase64(photo)], }], });

输出端:模型负责回答。你对着眼镜提问时,Llama 3(走Groq)会基于之前积累的所有画面描述来作答,回答只依赖已记录的画面信息,不会凭空猜测。这套"先描述、后问答"的设计,让普通单目摄像头也能实现接近多模态的效果。

五、实战演示:硬件组装与固件上传完整走一遍

当软件端跑通后,就可以进入硬件环节了。你需要的材料就三样:

  1. Seeed Studio XIAO ESP32 S3 Sense(含摄像头与麦克风)
  2. 3.7V 250mAh锂电池
  3. 3D打印的眼镜支架外壳(STL文件在项目文档里)

组装步骤很简单:把ESP32 S3模块固定到支架上,接好电池,戴上眼镜确认摄像头朝向正前方即可。

接下来上传固件。推荐用arduino-cli命令行方式,比图形界面更好复现:

arduino-cli config add board_manager.additional_urls https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json arduino-cli core install esp32:esp32@2.0.17 arduino-cli board list

board list确认端口号后,编译上传(把COM5换成你的实际端口):

arduino-cli compile --build-path build --output-dir dist -e -u -p COM5 -b esp32:esp32:XIAO_ESP32S3:PSRAM=opi

注意命令末尾的PSRAM=opi,对应图形界面里的"PSRAM: OPI PSRAM"。这一步必须设置,否则芯片内存不足,上传后一运行就崩溃。

文件地图:哪些文件需要你亲手改?

文件作用新手要改吗
README.md项目总览与快速入门必读
sources/keys.tsAPI密钥与模型地址配置必须改
firmware/firmware.ino硬件初始化与采集调度默认不用动
App.tsx前端交互界面入口基础使用不用动
prompts/generate.ts批量测试视觉模型的脚本开发者进阶用
sources/agent/imageDescription.ts图像描述与问答逻辑换模型时改这里

六、动手过程中最常遇到的3个问题

问:密钥填了但调用还是失败?

keys.ts默认读环境变量(如process.env.EXPO_PUBLIC_GROQ_API_KEY)。如果你直接改文件,注意要把?? ''一并替换掉,否则空字符串会覆盖你的密钥。改完要重启yarn start让配置生效。

问:固件上传时报"端口未找到"?

先确认USB线不是纯充电线;再运行arduino-cli board list查看设备是否被识别。Windows下若识别为未知设备,需要手动指定驱动;Linux下可能需要把当前用户加入dialout组并重新登录。

问:图像识别卡顿或长时间无响应?

优先确认本地模型是否拉取成功(ollama list能看到 moondream 才算就绪),以及keys.ts里 ollama 地址是否指向http://localhost:11434/api/chat。如果仍然慢,可以在imageDescription.ts里把模型换成更小的moondream:1.8b-v2-moondream2-text-model-f16

七、进阶玩法:从"能用"到"好用"

  • 批量对比模型:运行yarn prompts,脚本会读取prompts/series_1下的所有测试照片,依次用默认模型、llava-llama3、llava:34b等跑一遍并输出对比报告,帮你选出识别又快又准的组合。
  • 调整采集频率:在firmware/firmware.ino里修改captureInterval变量,控制拍照间隔,平衡续航与实时性。
  • 接入云端API:在imageDescription.ts中改用gptRequestgroqRequest,把视觉任务交给云端大模型,适合对识别精度要求更高的场景。
  • 关注后继版本:项目作者已把后续开发迁移到Omi仓库,新功能与社区讨论都在那边进行,贡献代码前建议先了解最新进展。

八、写在最后

OpenGlass不是那种"看看就好"的项目,它的价值在于真正把AI眼镜的成本和复杂度压到了普通爱好者够得着的位置。无论你是想拥有一副能翻译、能记事的眼镜,还是想在固件、模型、交互上练手,它都能提供一个不设防的起点。按本文顺序:先跑通软件、再上手硬件、最后按需定制,一个周末的时间足够你戴上自己做的AI眼镜出门了。

【免费下载链接】OpenGlassTurn any glasses into AI-powered smart glasses项目地址: https://gitcode.com/GitHub_Trending/op/OpenGlass

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询