Android移动终端应用APP中实现图像分类功能-----以pytorch为例

    技术2022-07-13  92

    笔者想在Android版本的App中实现图像分类的功能,查找相关文档之后,决定基于Pytorch实现,具体可以参考https://pytorch.org/mobile/android/。本文详细记录笔者进行实际测试的过程。

    1、利用预训练模型进行配置和测试

    模型转换:需要将预训练模型(例如Resnet18)进行序列化,相关代码如下:

    import torch import torchvision model = torchvision.models.resnet18(pretrained=True) model.eval() example = torch.rand(1, 3, 224, 224) mobile_module = torch.jit.trace(model, example) mobile_module.save("model.pt")

    顺利运行之后就应该得到在Android系统中可用的模型文件model.pt,该文件大小约为45MB。

    2、在android APP中进行测试

    去github下载android的演示版本app,具体方法为:

    git clone https://github.com/pytorch/android-demo-app.git cd HelloWorldApp

    或者是直接去该网址https://github.com/pytorch/android-demo-app 下载压缩包解压进入HelloWorldApp目录。

    将第一步生成的model.pt文件替换掉HelloWorldApp/app/src/main/assets/model.pt 随后利用android studio打开HelloWorldApp这个project,然后点击Build菜单,选择Build Bundle(s)/APK(s) 菜单中的“Build APK(s)”,如下图所示: 编译完成之后,会在右下角出现提示信息,如下图所示: 点击locate即可进入指定目录看到生成的apk软件安装包

    将apk文件发送至android手机中进行安装,启动后即可看到分析结果,如下图所示:

     

    推荐一个公众号:健哥聊量化,会持续推出股票相关基础知识,以及python实现的一些基本的分析代码。欢迎大家关注,二维码如下:

    相关文章列表如下:

    技术炒股VS价值投资

    股票基础知识----- K线形态

    股票K线形态 ----早晨之星

    “早晨之星”实际操作篇---通达信软件为例

    牛刀小试----python+tushare进行股票分析

    股票K线形态----黄昏之星

    股票K线形态-----墓碑线

     

    Processed: 0.011, SQL: 9