人脸口罩识别_APP开发

程序运行展示

程序相关说明

代码逻辑实现

    使用tensorflow2.x训练的模型,可使用迁移学习减少训练参数,导出的tflite模型体积较小 相机模块使用CameraX,人脸检测模块使用Google的mlkit(本人不会在Android中使用openCV,个人觉得mlkit接口很友好) 由于训练的数据集中没有图片无人脸的情况,需要使用人脸检测模块来辅助该模型,只有出现人脸时才使用模型解释器来推断

参考资料和代码

学习网址

数据集:

TensorFlow datasets:

Kaggle datasets:

免费运算资源:

Google Colab:

Kaggle:

App代码借鉴:

tflite Demo:

人脸检测:

程序、源码、tflite模型等文件

人脸口罩识别App下载地址:

tflite模型地址:

tflite模型训练代码:私聊

个人总结

模型训练和Android App开发是完全独立的,我们需要训练好一个模型或者下载别人训练好的模型。

很多时候要自己去训练一个模型,往往会受限于数据集和运算资源。在tensorflow lite 中的一个1k种类物体检测的demo,虽然模型很小,但是该模型是通过上百G的训练集训练出来的,而且经过量化之后导出的模型,在代码中是否为量化的模型也需要注意修改相关地方

在开发对应模型的App时,需要明确模型能处理图片的格式,如大小、颜色等。

总之Android上深度学习模型的离线推断实在是有很多坑。。。。

经验分享 程序员 微信小程序 职场和发展