1。K210套件,在连接数据线后,并且打开开关,屏幕变成白屏,无法进行测试
1条回答 默认 最新
关注【相关推荐】
- 看下这篇博客,也许你就懂了,链接:K210寻找色块
- 除此之外, 这篇博客: 咸鱼K210体验笔记—模型训练中的 咸鱼K210体验笔记—模型训练 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
- 2. 下载工具
- 3. 准备环境
- 4. 修改参数
- 5. 导入图片
- 6. 开始训练
- 7. 转换成Kmodel
此教程可以完整的在Win完成:制作数据集、训练yolo、转换成k210可用的Kmodel文件
参考地址::https://github.com/TonyZ1Min/yolo-for-k210
模型训练
安装时记得勾选 【Add Anaconda3 to the PATH environment variable】

下载此工程,在工程根目录下将[train_ann.zip]和[train_img.zip]解压到当前文件夹
资料下载
将[ncc_0.1_win.zip]放置在工程根目录,解压到当前文件夹首先在所在系统中安装Anaconda。可以打开命令行输入
conda -V检验是否安装以及当前conda的版本。

1.新建环境:
conda create -n yolo python=3.6

输入y等待下载完成

2.激活环境:
conda activate yolo

3.安装必要软件包:pip install -r requirements.txt报错原因:文件没在根目录下所以无法打开

移动过去再试试,好了意外不意外(滑稽)
再等等QAQ(时间有点长。。耐心一点)

在[configs.json]中修改网络类型,lable标签(如raccoon),和其他参数 注意存放图片(train_img)和存放注释(train_ann)的文件夹名称 examlpe

先将图片放在train_img文件夹
打开labelImg.exe

Open Dir—>选择存放图片的文件夹(train_img)

Change Save Dir—>选择存放注释文件夹(train_ann)

Create RectBox—>框选要标注的物体并输入lable,和上文configs中的相同(如raccoon)



Save后点下一个(Next Image)
会自动生成标注的目标位置的xml文件保存在注释文件夹中输入命令
python train.py -c configs.json如果出现cv2丢失那就是requirements.txt文件没搞完 重新再来一遍即可解决:pip install -r requirements.txt

PS:放的训练图片太多了导致训练时间巨长。。自己搞的时候图片放少一些。(等的我花都谢了)

下载完成等待训练结束,会出现时间命名的文件夹,里面的tflite文件就是训练好的模型

重命名(如:test.tflite)并复制到工程根目录


ncc_0.1_win\ncc test.tflite test.kmodel -i tflite -o k210model --dataset train_img
转换完成根目录会出现test.kmodel,即可烧录进k210中运行
测试程序
import sensor,image,lcd,time import KPU as kpu lcd.init(freq=15000000) sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QVGA) sensor.set_windowing((224, 224)) sensor.set_brightness(2) sensor.run(1) clock = time.clock() classes = ['class_1'] task = kpu.load(0x300000) anchor = (1, 1.2, 2, 3, 4, 3, 6, 4, 5, 6.5) a = kpu.init_yolo2(task, 0.17, 0.3, 5, anchor) while(True): clock.tick() img = sensor.snapshot() code = kpu.run_yolo2(task, img) print(clock.fps()) if code: for i in code: a=img.draw_rectangle(i.rect()) a = lcd.display(img) print(i.classid(),i.value()) for i in code: lcd.draw_string(i.x(), i.y(), classes[i.classid()], lcd.RED, lcd.WHITE) lcd.draw_string(i.x(), i.y()+12, '%f1.3'%i.value(), lcd.RED, lcd.WHITE) else: a = lcd.display(img) a = kpu.deinit(task)
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决 无用评论 打赏 举报