Meta在智能眼镜上推出面部识别功能
2026年6月4日,Stella是Meta智能眼镜的伴随应用。在检查Android构建版本273.0.0.21(com.facebook.stella)时,我发现了在设备上进行面部识别的整个计算和存储堆栈:三个面部模型,一个本地数据库架构,一个余弦相似度向量索引,其维度与模型匹配,一个将生物识别记录存储到磁盘的写入路径,一个完全连接的通知界面,以及一个用户面对的“连接”小部件。我想精确说明这意味着什么和不意味着什么,因为这两者之间的差距很重要。我可以证明:机器在,有连接在一起。多个面部提取和面部指纹模型存在,我能够在测试图像上端到端地运行识别管道,并检测到一张面孔,生成一个2048维生物识别嵌入,搜索本地索引,并在匹配时触发一条Android通知,告知用户“已识别到人”。为了使管道运行,我直接用测试照片调用了其现有处理程序。我不能证明的是:这些对普通用户是活动的。在一个未注册的账户上,用户界面不显示,识别通知深度链接的屏幕在构建中缺失。我也没有观察到Meta将身份数据推送到我测试账户的相关数据库中。因此,这并不是“Meta在秘密识别你所看到的人”。而是:用来确切做到这一点的完整设备正坐落在设备上,已组装并功能齐全,但由Meta限制访问。以下所有发现均可在com.facebook.stella v273.0.0.21上复现。设备上加载了三个面部识别模型(约100MB)三个ExecuTorch(.pte)模型通过Meta的资产交付系统NMLML加载到设备上,从Meta下载。资产名称(Meta的命名) 文件大小 功能 android_facerec_scrfd SCRFD.pte 3.4 MB 检测图像中的面部 android_facerec_kps_aligner KPSAligner.pte 117 KB 裁剪并对齐每个检测到的面部 android_facerec_sface SFace.pte 96 MB 将面部转换为2048数的嵌入(生物识别指纹)这些映射到开源架构,同样的模型家族已被其他应用和学术项目使用:SCRFD样本和高效面部检测的计算重分发(InsightFace,ICLR 2022)。参考实现:github.com/deepinsight/insightface 。SFace约束Sigmoid超球面损失用于面部识别(Zhong等,2021)。参考:github.com/zhongyy/SFace KPSAligner基于关键点的对齐,自2015年以来的标准实践(MTCNN,dlib,InsightFace)。Meta的SFace变体似乎比公共参考文件规模更大(96 MB对比约40 MB;2048维输出对比参考的128–512)。值得明确指出:加载检测和嵌入模型本身并不是识别的证据。许多应用在设备上运行面部检测以进行框架或对焦。一个与设备指纹相匹配的余弦相似度面部索引实际上运行并读取该数据库的识别管道:/data/user/0/com.facebook.stella/files/rldrive/person_profiles/objects.db 这个数据库存在于RLDrive下,Meta的跨设备同步框架中,在person_profiles命名空间中,设计为远程填充。我没有直接观察到Meta向我的测试账户上的person_profiles推送数据。我想明确表示,我在描述通道的存在,而不是观察到的传输。数据库架构: CREATE TABLE person ( nodeid INTEGER PRIMARY KEY, name TEXT, uri TEXT, blob BLOB, deleted INTEGER, version BLOB ); CREATE TABLE face ( nodeid INTEGER PRIMARY KEY, mediaPath TEXT, -- 在深度链接中使用的face_id personUri TEXT, -- 软引用回person.uri blob BLOB, deleted INTEGER, uri TEXT, version BLOB ); CREATE VIRTUAL TABLE face_mediaPath_vec USING vec0(mediaPath float[2048] distance_metric=cosine); -- 每个脸的2048浮动生物识别指纹,余弦距离搜索 -- (使用sqlite-vec扩展)每个面部行通过personUri指向一个人。每个face.mediaPath是面部_mediaPath_vec的主键,存储2048数的嵌入。识别是针对该索引的余弦相似性查询,然后连接到person.name以获取通知文本。一些东西对齐:vec0是开源的sqlite-vec扩展,它将SQLite变成一个向量相似度引擎。维度float[2048]是SFace嵌入器在应用上送出的确切输出形状。余弦度量是比较面部嵌入的标准选择。该架构允许每个personUri多个面部行(没有唯一约束),但从未注册设备上无法看到生产部署是否使用一对一或一对多。端到端测试确认了两个分支并隔离了写入位置。我对数据库进行了SHA-256快照,并计算了行数,然后运行了完整的识别管道两次:第一次针对空索引(无匹配),第二次再次运行。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡