运行script文件夹下的download_models和download_ncnn_sdk两个脚本。download_ncnn_sdk只需要执行一次,download_models在模型文件出现修改时需要重新执行。
cd script
./download_models.sh
./download_ncnn_sdk.sh
安卓应用位于android/DataCollection中,运行需要动态加载contextactionlibrary库的dex二进制包。编译二进制包分为两步,首先生成classes.jar,再将classes.jar转化为classes.dex。classes.jar由android studio生成,在左侧的Project栏中选择ContextActionLibrary库,再点击菜单栏Build下的Make Module 'DataCollection.contextactionlibrary'。编译得到的结果位于contextactionlibrary/build/outputs/aar/contextactionlibrary-debug.aar。
执行DataCollection下的aar2dex.sh脚本可以将aar包中的classes.jar提取转化为classes.dex,并放到后端的指定位置供前端下载使用。
执行aar2dex.sh需要配置D8_PATH这个环境变量,即d8所在的路径。在Mac下一般位于~/Library/Android/sdk/build-tools/{sdk-version}/d8。
export D8_PATH={YOUR_PATH} # Recommend adding this line to .bashrc
./aar2dex.sh
-
注:对于Windows平台,执行DataCollection下的aar2dex_win.bat脚本,需要提前配置环境变量D8_PATH,一般在%USERPROFILE%\AppData\Local\Android\Sdk\build-tools%sdk_version%\d8.bat。默认服务器IP端口地址为127.0.0.1:6125,可以用
-s
参数指定。.\aar2dex_win.bat [-s ip:port]
cd backend/server/src
python3 main.py
后端供下载的文件位于backend/server/data/file中,在更新其中的文件之后需要重启后端来重新计算文件的hash值,或运行指令:
curl -XPOST http://127.0.0.1:6125/md5 # Use your backend ip address
手机和后端所在的电脑应该在同一个局域网内,在DataCollection的local.properties中加入字段web.server,值为后端的ip。
示例:
web.server="http://114.67.110.181:6125"
在DataCollection的local.properties中加入字段key.path,值为android/DataCollection/key的绝对路径。
示例
key.path=/Users/euxcet/Project/AutoAction/android/DataCollection/key
- 前端编辑动作类型
- 前端可视化样本
- 前端可视化训练结果
- 后端维护数据
- 后端训练自动化流程
- Docker
- 增加识别网络的数量和配置
- 权限管理
- 美化ui