目的:想编译一套自己的模型,使用在安卓机器上面,识别自己自定义的数据集类型
步骤:1、使用labelImg.exe工具标注自己的VOC数据集,执行命令:python dataset/voc/create_list.py -d path/to/dataset,生成需要的trainval.txt和test.txt文件
2、使用命令开始训练:python -u tools/train.py -c configs/yolov3_mobilenet_v1_voc.yml ,使用的移动端模型,可正常训练完成,需要的时间比较长
3、导出可预测模型:python -u tools/export_model.py -c configs/yolov3_mobilenet_v1_voc.yml --output_dir=./inference_model
4、导出模型文件:paddle_lite_opt --model_file=__model__ --param_file=__params__ --optimize_out_type=naive_buffer --optimize_out=cpu_model --valid_targets=arm ;可正常导出手机端使用的nb模型文件,
目前问题:使用faster_rcnn_r50_fpn_1x.yml 训练的预测模型可在平台端实现正常的识别,使用手机端模型文件(yolov3_mobilenet_v1_voc.yml )导出的模型文件放置到安卓手机端,不可识别到自己自定义标注的数据集:1、文件过大,两个类型的lables,大概有140M(示例程序里面的模型有80种类型才16M);2、识别不了数据集类型
求助:请问一下,是我操作流程有问题还是其他的问题,有成功操作的麻烦指教一下,谢谢!
附上模型的部分参数:
architecture: YOLOv3
use_gpu: false
max_iters: 168
log_iter: 20
save_dir: output
snapshot_iter: 2000
metric: VOC
map_type: 11point
pretrain_weights: http://paddle-imagenet-models-name.bj.bcebos.com/MobileNetV1_pretrained.tar
weights: output/yolov3_mobilenet_v1_voc/model_final
num_classes: 2
use_fine_grained_loss: false
yolov3_mobilenet_v1_voc训练完在训练平台能识别嘛?
如果识别不了,那就是你的模型训练有问题
电脑端测试过,直接命令执行的测试训练,可识别
那就问题不大,