笔者最近被诊断出高血压,意识到不能忽视健康问题,开始定期就医并尝试逐步调整生活习惯。改善血压的关键之一是饮食控制,比如减少盐分摄入和限制酒精饮用。虽然酒精含量标注明确,控制较为直观,但盐分摄入的控制却较为复杂。盐分广泛存在于各种食材中,即使自认为摄入量合理,实际盐分往往超出预期。同时,对于哪些食材有助于高血压管理,也缺乏清晰的认知。

食材图片

虽然对部分食材有所了解,但要同时考虑盐分、热量及营养成分来选择食材和菜肴,确实不易。能否有一种简单方式,快速区分“适合食用”和“不宜食用”的食物呢?

正当思考之际,笔者想起了日本Google Pixel 10 Pro内置的支持本地AI的“Gemini nano”芯片。通过“ML Kit生成AI API”,普通应用也能调用设备上的Gemini nano,实现食材图像识别并展示相关信息,从而辅助高血压饮食管理。

应用界面

虽然云端AI的图像识别更准确且速度快,但需要联网且可能产生额外费用。相比之下,本地AI可在Pixel 10 Pro设备上完成全部识别过程。关键在于,识别出食材后,是否能准确推算其热量和盐分含量?

幸运的是,日本文部科学省公开了“日本食品标准成分表”,提供了丰富的食材及菜肴成分数据,且免费开放。最新版本为“日本食品标准成分表(第八版)增补2023年”,其中“第2章(数据) (Excel:1.9MB)”特别适合本应用使用。

该数据不仅支持个人使用,商业用途也允许,只需在二次利用时注明出处。虽然数据仅以Excel格式提供,稍显不便,但通过转换成应用内部数据库格式,完全可用。

数据表

借助Claude Code的帮助,笔者开发了一款完全本地运行的图像识别应用,流程为:利用Gemini nano识别摄像头画面中的食材→根据识别结果查询数据库→估算食材分量并显示名称、热量、盐分及钾含量等信息。该应用从早上8点开始开发,经过多次测试,上午内基本完成,开发效率极高。

应用演示

市面上虽有类似通过食材或菜肴图像估算热量的应用,但多依赖云端AI,本地AI独立处理的案例尚属少见。

应用以拇指大小作为分量估算基准,若估算不准,用户还可通过滑块调整分量,方便掌握热量和盐分摄入,使用体验较为便捷。

分量调整

识别准确率中等,误识时可切换其他候选结果,虽仍需调优,且部分复杂场景可能仍需云端AI辅助,但整体参考价值较高。推理过程耗时较长,响应速度有待提升。

识别界面

识别界面

通过此应用,笔者深刻体会到控制盐分摄入的难度。

不过,最近开始享受每天吃沙拉的习惯,曾经喜爱的拉面也逐渐减少食用,感觉借助这款应用能更好地坚持低盐饮食,助力健康管理。