2026-02-16
第一次听说用WiFi信号能检测人体移动的时候,我整个人是懵的。这不是科幻片里才有的情节吗?
Github上的这个开源Espectre还真能搞定,而且只要一个ESP32开发板就能轻松完成,整个过程不需要摄像头,不需要穿戴设备,甚至能穿墙检测。
Espectre非常适合家庭的老人、儿童看护等场景。

开源地址:https://github.com/francescopace/espectre
现在市面上的红外检测都不便宜,要想全屋覆盖少说也要大几百。而ESPectre的做法特别聪明,它把WiFi信号当成了隐形雷达。
当有人在房间里走动时,WiFi信号会产生细微的变化,ESPectre就是通过分析这些变化来判断有没有人移动。
打个比方吧,你往池塘里扔一块石头,水面会产生波纹,如果这时候有片树叶飘过来,波纹就会被扰动。
ESPectre做的就是捕捉这种扰动,只不过它捕捉的是WiFi信号的波动,而不是水波。
这个项目最让我惊喜的是它的开箱即用程度。很多类似的开源项目都需要你收集数据、训练模型,折腾个几天才能用。
但ESPectre用了一套纯数学算法,官方叫MVS移动方差分割,宣称召回率能达到99%。对于咱们只想快速上手的人来说,简直是救星。

当然如果你是技术发烧友,觉得纯数学还不够精准,它还提供了预训练的机器学习模型。
这个模型是用神经网络训练好的,直接启用就行,适合那些对精度要求特别高的场景,比如老人看护。
配置过程大概就三步。第一步在ESPHome里添加外部组件,把ESPectre的仓库地址填进去。
第二步写一个简单的YAML配置文件,指定一下你的开发板型号和传感器参数。
第三步编译上传到ESP32,可以USB连接也可以OTA无线刷写,看你方便。整个过程快的话十五分钟就能搞定,慢的话半小时也够了。
有个小细节要提醒一下,设备放置的位置挺讲究的。官方建议是距离路由器3到8米之间,太近或者太远都会影响检测效果。
还有尽量避免设备和路由器之间有大型金属物体,比如冰箱或者金属柜子,会屏蔽WiFi信号。
高度的话建议放在桌面高度,一米到一米半左右,别放在墙角或者封闭空间里。
登录/注册后继续阅读
立即登录/注册 >