Lumen Cutout重构BiRefNet:1024级分割全量跑通手机NPU
文 / Mr.Xu 社区投稿
发布时间:
摘要:独立研究者发布 MIT 许可的 Lumen Cutout,将 BiRefNet-lite 的可变形卷积、移位窗口与高分辨率解码器改写为手机 NPU 可编译结构,并通过导出图上的全 8 位 QAT 蒸馏完成训练。项目称,在 Galaxy S26 的 Snapdragon 8 Elite Gen 5 上,以单 NPU 分区生成 1024×1024 蒙版仅需 23.7 毫秒;所有 2,060 层均由 NPU 执行。其在 ECSSD、DUT-OMRON 上接近 FP32 教师,但 DIS-VD 细小结构指标下降 0.017 S-measure,且目前仅覆盖 Snapdragon,未报告功耗。
项目核心
Lumen Cutout 没有直接压缩原版 BiRefNet-lite,而是先解决移动端编译与内存约束,再以全 8 位量化感知训练(QAT)和蒸馏校准输出误差。
原模型包含 20 个可变形卷积、Swin 的 5D/6D 张量、通过循环移位实现的移位窗口,以及尺寸过大的 1024 像素激活。这些组件要么超出 Qualcomm QNN/LiteRT 的算子支持范围,要么导致片上内存溢出。项目先通过等价图改写消除不兼容结构:
- 将窗口划分改为 4D 实现;
- 用固定掩码替代 cyclic roll,避免显式移位算子;
- 拆分通道卷积,降低单次算子的中间张量规模;
- 将多头注意力改为逐头执行;
- 把主要骨干输入降至 640 像素,通过双输入路径生成 1024 像素蒙版;
- 使用精简全分辨率尾部,并在 Swin 第四阶段保留一个全局窗口。
这些改写解决的是“能否编译”和“能否驻留”,并不自动保证分割质量。为避免普通训练后量化破坏边界细节,QAT 直接贯穿导出的 NPU 图,使训练目标覆盖实际执行中的 INT8 舍入与算子行为。
性能与部署结果
作者报告,Galaxy S26 搭载 Snapdragon 8 Elite Gen 5 时,生成 1024×1024 蒙版耗时 23.7 ms;Snapdragon 8 Elite Gen 5 的 Galaxy S25 为 31.1 ms;搭载 Snapdragon 7 Gen 1 的中端设备为 182 ms。2,060 层计算全部落在 NPU 上,没有明显 CPU 回退。
对照结果更能说明工程收益:原始 BiRefNet-lite 在这些手机上处理 1024 像素时直接内存溢出;降至 512 像素后虽然可以运行,却回退到 CPU,耗时 677 ms,峰值内存达到 2.1 GB。Lumen Cutout 的价值不只是减少模型计算,而是把原本不可部署的高分辨率分割管线变成了单 NPU 分区。
项目还提供针对 42 款 Snapdragon 芯片的 AOT 编译产物,并通过 GitHub Actions 为每款芯片建立独立编译任务。这种方式将芯片差异隔离在构建矩阵中,应用侧可以复用统一的 LiteRT/QNN 推理接口。
精度表现
在未参与训练的 ECSSD 和 DUT-OMRON 上,INT8 学生模型与 FP32 教师的 S-measure 分别为 0.939 对 0.938、0.830 对 0.826,聚合指标基本持平。作者同时承认,量化模型的边缘更柔软,说明统计指标接近并不等于像素级边界完全一致。
在更强调细线、栅栏等高频结构的 DIS-VD 上,模型损失 0.017 S-measure。另有 6 个公开模型在 DUT-OMRON 上优于它。因此,这套方案更接近针对手机交互场景的工程化折中,而不是新的分割精度 SOTA。
蒸馏中的静默失效
项目最值得复用的经验来自一个没有明显报错却已经失效的门控分支。最深层解码器的 sigmoid gate 在学生模型中饱和到约 1e-11,对应分支事实上停止工作;但剩余解码器能够补偿其作用,导致最终 mask loss 看不出异常,而教师模型的 gate 仍约为 0.46。
作者通过教师分支恢复和特征损失保持该路径开放。这类问题说明:仅监控最终任务损失不足以发现蒸馏模型内部的结构性坍缩。门控饱和率、分支激活规模或特征空间距离都应进入训练门禁,避免“整体指标正常、内部专家死亡”的隐蔽退化。
工程权衡与限制
高分辨率输出是手机抠图体验的核心,但也会放大激活内存压力。Lumen Cutout 通过双输入重建和精简尾部避免直接运行 640 像素以上的全分辨率骨干,这节省内存,却也使细节恢复依赖融合过程。其 1024 像素速度优势建立在 Snapdragon NPU、专用编译产物和全图分区条件上,不能直接外推到 MediaTek 或 Tensor 平台。
项目尚未测量功耗,因此无法判断 23.7 ms 是以何种能效代价取得。持续 42 FPS 的 NPU 推理也不等于相机或图库管线端到端达到 42 FPS;前后处理、UI 线程竞争和内存搬运仍会占用时间。开发者应同时测量热稳定状态下的延迟分位数、峰值内存、能耗和冷启动成本。
开发者落地建议
移动端团队可按以下路径评估:
- 先用预编译芯片包验证目标 SoC 的实际吞吐与峰值内存,避免直接承担完整 QNN/LiteRT 转换流程;
- 在目标图库数据集上同时比较边缘质量、细线召回率和人工主观评分,不要只看 S-measure;
- 检查量化后各解码分支的激活与门控值,防止分支静默死亡;
- 将冷启动、持续负载、相机预览和后台切换纳入端到端测试;
- 在跨厂商设备上准备独立 CPU 或 GPU 回退路径,因为当前发布物仅覆盖 Snapdragon。
Lumen Cutout 的核心贡献是把 BiRefNet 类高质量分割模型从“可以离线运行”推进到“能够在旗舰手机上全量、常驻地运行”。它尚不是通用边缘分割平台,也未证明跨 NPU 可移植性,但对 Android 相册抠图、实时特效与离线图像编辑而言,提供了可复现且相当完整的工程样例。
—— 完 ——消息来源:Reddit r/MachineLearning (2026-11-15)
主题标签: #移动端NPU #图像分割 #INT8量化 #BiRefNet #QNN
编辑部与事实核查说明:本篇专刊由智客前沿资讯管线根据官方技术公告、学术论文及开源工程文档整理编译,经算法实体核验与人工编辑审校后发布。若发现技术事实纰漏,欢迎依据勘误方针或一键向编辑部发送勘误反馈。
社区整体评论区