# hieuler_tinyml_sample **Repository Path**: HiEuler/hieuler_tinyml_samp ## Basic Information - **Project Name**: hieuler_tinyml_sample - **Description**: 基于TinyML的苹果目标检测案例 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2024-01-25 - **Last Updated**: 2025-03-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # hieuler_tinyml_sample ### 介绍 基于TinyML的苹果目标检测案例 #### 环境准备 请您参考TinyML环境搭建手册在下面步骤开始之前准备好您的TinyML环境 注:涉及到开发包获取请联系开发板供应商 #### 数据集准备 1. 数据集介绍: 原始数据集JPEGImages图片数量为11013张,在进行数据集划分时本实验划分脚本将把数据集划分为train、test、val。TinyML训练只需要train、val两个数据集即可。本实验只想放入适量数据集到train里面(减少训练时间),所以train里面划入3303张图片,val划入5张图片。test里面划入的数据将被舍弃不参与训练。可根据个人需求对划分脚本进行修改。 2. val数据集介绍: val里面只划入5张图片,是为了加快训练速度,建议只划入10张左右些许少量的图片即可。 3. 数据集制作: 本实验Annotations与JPEGImages下载链接:https://aistudio.baidu.com/datasetdetail/258349 请在qrcode_dataset下建立下面目录: ![输入图片说明](%E5%9B%BE%E7%89%871.png) (1)Annotations下txt为yolo格式信息,JPEGImages下为图片 (2)train_test_val文件夹以及其下面的子文件夹为空文件夹 (3)请您在服务器上qrcode_detect目录下执行命令进行数据集划分: python split_train_val.py (4)请您在qrcode_detect目录下military_object.names中写入您的类别,本实验为apple (5)请您在服务器上qrcode_detect目录下执行命令:python train_coco.py,命令执行完94服务器 上qrcode_detect/qrcode_dataset目录下生成train.json (6)请您在服务器上qrcode_detect目录下执行命令:python val_coco.py,执行完后将在 qrcode_detect/qrcode_dataset目录下生成val.json (7)请您在服务器上执行以下命令: . cd SS928V100/sample/qrcode_detect/qrcode_dataset . mkdir val . cp -r ./train_test_val/images/val ./val/ . mv ./val/val ./val/images 执行完以上命令后服务器上将会在qrcode_dataset/val/images 下包含train_test_val/images/val 的图片 (8)请您到94服务器上qrcode_detect目录下执行:python lutxt.py,执行完后将在qrcode_detect目录下生成 deploy_data_list.tx #### 训练 4. 请您连接好您的开发板,并保证板子和您的服务器能够互ping。并保证服务器端nfs正常,板子能对服务器端文件进行mount 5. 请您在服务器上切换到训练环境: conda activate your_name 6. 请您在服务器上qrcode_detect目录下执行此命令: rm -rf search_workspace 7. 请您在服务器上qrcode_detect目录下执行此命令: tinyml_cmd -t search -p search_qrcode_detect.py 8. 训练完成后服务器上qrcode_detect目录下将生成search_workspace文件夹 #### :star: 训练补充说明 ****1***** 数据集制作:此处提供xml转coco格式 1.1 文件夹路径如下: ![输入图片说明](1706510759231.png) 1.2 把xml-coco文件下的py文件移动到qrcode_detect下进行运行,运行步骤同上面yolo转coco ****2***** 提高训练速度说明: 2.1 减少val数据集数量 2.2 适当把sample_per_gpu和num_work改大一点,需要保证您的gpu数量乘以sample_per_gpu乘以num_worker小于训练集的总 数,不能太大,太大显存会爆,所以sample_per_gpu一般16 32 64 num_worker一般2 4 8 ,每张卡上一次训练的sample 数,也叫batchsize,num_worker是数据处理的进程数。