实验室自动化称重 App
这个项目是干嘛的
在实验室给小鼠称重是一件非常枯燥的事:把老鼠放到秤上,等读数稳定,抄下来,换下一只,重复一下午。实验室自动化称重 App(项目代号 MouseVision Edge)想把这一步彻底自动化——手机架在秤旁边,读数自动进 App,称完直接导出数据,人只需要负责抓老鼠。
历程:从纯视觉到蓝牙秤
最早的方案是纯视觉:手机摄像头对着电子秤的显示屏,拍照或录像传到后端,用模型识别 LCD 数码管读数。这个想法听起来很美好——任何秤都能用,完全不用改造硬件。但实际做下来碰到两个解决不了的问题:
- 后端识别速度跟不上。称重是一个连续过程,读数稳定的时间窗口很短,识别链路一慢就丢数据,实时性达不到要求。
- 训练不出合适的模型。LCD 数码管在不同光照、角度、反光下表现太多变,以手头的数据量和算力,始终训不出一个稳定可用的识别模型。
所以现在的架构改成了:蓝牙电子秤 + 视频记录 + 网络后端模型。秤的读数直接通过蓝牙广播进手机(只监听广播,不配对、不连接),称重过程同步录像存证,需要模型参与的环节全部挪到网络后端。纯视觉的代码没有删,保留在服务端,以后说不定还有用。
公众版下载
目前同步放出了公众版(离线本地版)v0.3.4:Android 8.0+,所有数据保存在手机本地,不依赖任何服务器,装完即用。
- 本站下载 miceautomatic-local-v0.3.4.apk(推荐,直接下载)
- GitHub Releases 备用下载(附 USER_GUIDE.md 使用手册)
- 项目源码仓库
支持的蓝牙电子秤
目前支持 K797 系列蓝牙电子秤。App 只监听秤发出的 BLE 广播来获取读数,不需要配对,也不需要建立 GATT 连接,开箱即用。秤型号是通过配置文件(scale_profiles.json)驱动的,理论上新增型号不需要改代码——如果你手上有其他型号的蓝牙秤愿意帮忙测试,欢迎到 GitHub 提 issue。
使用流程
- 打开 App;
- 电子秤开机,App 通过监听广播自动发现秤;
- 点击开始录制,称重过程同步录像;
- 把小鼠放上秤,读数稳定后 App 自动记录体重;
- 全部称完后导出 CSV / JSON 数据即可。
演示
一些简单的演示界面,还没正式去拍视频
“后匹配”功能是相信模型能力,利用先拍摄,后识别的方式去识别匹配小鼠体重情况。后端会根据数学模型判断体重曲线(100ms)然后计算体重节点,记录预览帧和视频。“及时报数”就是等小鼠体重稳定 2 次采集以上,记录体重并报数(大概是 200ms 左右)。人工确认报数是正确的。“手动”就是人点,大概小鼠稳定了手动点一下就会记录当前帧和视频。用起来还算方便。
还有一些箱号管理的小功能,方便去看自己的批次、笼位等。可以手动输入也可以扫描。
使用界面也在优化中。
后记
实际上我想这个系统应该是做成纯视觉方案的,毕竟买个电子秤还是太不 sexy 了。但是标注数据太少,平时也没空,导致模型训练的时候不能收敛,训不出来。可能等手机到足够的标注数据以后再更新一般。中途也尝试用Gemini 的视频能力做蒸馏,但是终究是失败了(笑
留言
留个言吧(只需邮箱,不会公开)
还没有留言,来抢沙发。