【常州工NEC】K230最低成本150元KFS识别指北

基于庐山派K230识别甲骨文与小篆字体

一.数据获得:

1.素材采集(以下用R_R1为例)

1.1录视频:(也可自行选择拍照)

一个字符面录制十分钟左右视频,不同角度不同光影,纯色背景。如图:

1.2裁剪:

导入剪辑软件(例如剪映),将视频按比例1:1裁剪,1080p 30帧导出。

1.3转照片:

通过格式工厂转出帧。如图:

点击导出帧。

然后添加文件,选择我们需要转成照片的视频,点击确定。

最后点击▲开始。

完成后,能在左上角输出文件夹找到照片。十分钟能导六百多张照片。

将照片建立文件夹保存好,以对应标签训练照片命名。

2.数据训练

嘉楠开发者社区开发教程https://www.kendryte.com/ai_docs/zh/v0.6/%E4%BD%BF%E7%94%A8%E5%9C%A8%E7%BA%BF%E4%BA%91%E8%AE%AD%E7%BB%83%E5%B9%B3%E5%8F%B0%E5%BC%80%E5%8F%91.html

训练平台网址(勘智开发者社区-AI开发者技术交流平台

注册后:

2.1创建数据集:

点击创建数据集。如图:

数据集名称为pdf对应标签。如下:

标注类型为:图像检测。最后提交**。**

2.2导入图片

点击配置。

img

点击上传图片。图片为上面转出的六百多张图片。

2.3标注:

点击标注。

点击+新标签,然后输入字符对应标签名。

当标签为绿色时,即为标注状态。

在标注状态下,标注需用框框将整个字符贴面完全框住。如下图绿框将红色贴面完全框住:

标完即完成。

img

2.4训练:

然后点击:arrow_left:返回。

最后点击训练。

3数据处理:

训练完成后,能在训练记录找到结果。训练六百张照片大概能得到六十张有标注的照片。

点击训练记录,点击下载。

在下载的文件夹中找到上面下载的解压包。

将下载的解压包与存放之前导出照片的文件夹放在一个文件夹内。将压缩包解压。如图。

img

标注的cls_results和model可在发到邮箱也可在训练记录下载。大概会出百分之十的正确标注图片。根据协作PDF要求,标注图片每个字符>50张。

4.以上关于K230的标注说明参考了开源协作标注说明PDF、K230教程、嘉楠开发者平台训练教程。

二.数据于k230应用:

1.k230

庐山派-K230-CanMV开发板 K230 芯片是一款基于 RISC-V 架构的端侧 AIoT 芯片,具有高精度、低延迟、高性能、超低功耗、快速启动等特点,可广泛适用于各类智能产品场景,如边缘侧大模型多模态接入终端、3D 结构光深度感知模组、交互型机器人、开源硬件、智能制造、智能家居、智能教育硬件等众多领域。

1.1基本使用情况

  1. 超高性价比的AI视觉开发板。以嘉楠科技Kendryte系列AloT芯片中的最新一代SoC芯片K230为主控芯片,支持三路摄像头同时输入,典型网络下的推理能力可达K210的13.7倍,等效6TOPS算力。
  2. 支持CanMV,可以直接使用MicroPython编程,简单易用。可作为AI与边缘计算平台 。
  3. 助力电赛,强于电赛传统老视觉方案十倍以上,不再需要因像素模糊而妥协,也不需要因为性能限制导致需要反复优化代码。
  4. 软硬件资料全开源,提供配套入门手册和CanMV固件,包含130+应用案例。

1.2硬件参数和可支持效果

  1. 硬件参数

  1. 可支持效果
  • 脸部相关

人脸识别,人脸分割(解析),人脸特征点识别,人脸3D网络,人脸朝向检测,人眼注视方向

  • 人体相关

人体检测,人体关键点检测,跌倒检测

  • 手部相关

人手检测,人手动态方向识别,手部关键点检测,手部关键点分类,手势识别,石头剪刀布

  • 物体识别

常见物体识别,物体识别分割

  • 码类识别

二维码,条形码,机器码-2D信息,机器码-3D姿态,DataMatrix码

  • 颜色追踪

灰度颜色跟踪,彩色颜色跟踪

  • 其他识别

车牌识别,OCR光学字符识别,物体跟踪器,自学习分类

1.3供电说明

K230视觉模块可以通过Type-C数据线供电,或者通过通讯接口供电,供电电压为5V。豪华版(带屏幕)运行AI例程时工作电流大约为0.8A,标准版(不带屏幕)运行AI例程工作电流大约为0.6A。由于功耗比较大,建议连接电脑时选择USB3.0接口,也可以通过Type-C数据线连接5V1A、5V2A或5V3A的手机适配器供电。

1.4相关资料

教程资料立创·庐山派K230-CanMV快速上手 | 立创开发板技术文档中心

【立创·庐山派K230-CanMV开发板-组装视频-哔哩哔哩】 https://b23.tv/E8GCWqj

【打电赛用立创开发板!庐山派K230速成电赛视觉丨TI开发板使用技巧丨冲刺电赛倒计时!-哔哩哔哩】 https://b23.tv/usGRiUf

动物识别:【详细】k230运行yolov12教程,k230自定义神经网络教程,k230目标检测教程教程,k230运行AI模型教程,目标检测原理-哔哩哔哩】 https://b23.tv/T63hdqH

【详细】k230部署yolov12教程(中),k230自定义神经网络教程,k230目标检测教程教程,k230运行AI模型教程,目标检测原理-哔哩哔哩】 https://b23.tv/fxZD492

【【详细】k230部署yolo(下),k230自定义神经网络教程,k230目标检测教程教程,k230运行AI模型教程,目标检测原理-哔哩哔哩】 https://b23.tv/66a8lge

【【Yolo系列课】跟我学用K230实现图像分类-哔哩哔哩】 https://b23.tv/IqRZEsR【【Yolo系列课】跟我学用K230实现图像检测-哔哩哔哩】 https://b23.tv/ICv3mvo【【Yolo系列课】跟我学用K230实现图像分割-哔哩哔哩】 https://b23.tv/V5Rp7yu

【勘智K230开发板眼球追踪算法-哔哩哔哩】 https://b23.tv/OVdkc8I

【学习k230 - 例程48】条形码识别-哔哩哔哩】 https://b23.tv/7w9lJo9

【嘉楠K230 快速自定义数据集模型训练与部署 30分钟快速实操 分类/目标检测等模型训练-哔哩哔哩】 https://b23.tv/uy7U45Y

快速上手立创·庐山派K230-CanMV快速上手 | 立创开发板技术文档中心

立创开源硬件平台立创·庐山派K230-CanMV开发板 - 立创开源硬件平台

在线云训练平台8. 使用在线云训练平台开发 — AI开发教程

K230与AI的结合案例https://mp.weixin.qq.com/s/C07VJ0a-_2Vfu3SgntssvA?mpshare=1&scene=1&srcid=0613qCh8saecJvkMSACDwfFM&sharer_shareinfo=910903c2d53ea713f81004df59edc665&sharer_shareinfo_first=910903c2d53ea713f81004df59edc665#rd

• 腾讯文档:2025嵌入式大赛软件赛道_问题资料汇总

• 论坛:https://club.rt-thread.org/ask/article/f84d03434e2cffab.html

2.K230固件下载与烧录

2.1关于 CanMV K230固件

  1. 什么是固件?

可以理解为手机或者电脑的系统。

  1. 什么情况下需要烧录固件?

如果购买的套餐不带TF卡,则需要自己准备一张大于4G的TF卡,烧录固件到TF卡,再将TF卡插入TF卡槽才可以使用K230视觉模块。如果购买的套餐有带TF卡,则出厂已经烧录好固件,插上TF卡槽即可使用。

  1. 是否可以烧录第三方的固件?

由于固件中配置了引脚信息、外设驱动等内容,不建议烧录第三方的K230固件,会出现不兼容的现象

2.2准备设备

请准备K230视觉模块、一张内存大于4G的TF卡、一根type-C数据线和一台Windows系统电脑。

注意:TF卡如果有资料,请先移除备份,否则可能会被清空。

2.3下载固件

从K230视觉模块资料中下载出厂固件,名称为:CanMV_K230_YAHBOOM_micropython_Vx.x.x.img.gz

其中Vx.x.x为版本号。

K230视觉识别模块资料地址:K230视觉识别模块 提取码:pmff

解压文件后,得到固件,名称为:CanMV_K230_YAHBOOM_micropython_local_nncase_v2.9.0.img。

2.3连接K230设备

确认将TF卡从K230模块的TF卡槽取下来。
使用type-C数据线连接K230模块到电脑USB口。

打开电脑设备管理器:
鼠标右键点击此电脑,点击显示更多选项,点击管理。

点击设备管理器,点击其他设备。

如果是首次连接,在设备管理器会显示K230 USB Boot Device为感叹号,需要先K230安装驱动。

img

注意:由于K230视觉模块功耗比较大,所以请使用USB3.0接口连接设备。

2.4安装K230驱动

从K230视觉模块资料中下载驱动工具,名称为:K230BurningTool-Windows.zip

打开我们的开发板资料,解压出烧录工具驱动包。

双击运行文件,选择K230 USB Boot Device,然后点击Install Driver开始安装驱动。

等待显示安装成功即可。

img

安装驱动后重新插拔K230视觉模块,再次点开设备管理器查看,可以看到感叹号已经消失,说明驱动安装完毕。

img

注意:此工具只需要安装一次驱动即可。

2.5安装烧录工具

将k230连接到电脑USB端口,并且不安装sd卡。

从K230视觉模块资料中下载烧录工具,名称为:K230BurningTool-Windows.zip

解压文件后,找到K230BurningTool.exe文件,双击打开即可。

注意解压的路径不要有中文。

打开开发板资料,点击烧录工具,点击bin,双击打开烧录工具,

2.6配置烧录工具

将下载的镜像文件解压得到img文件,

点击打开,

img

找到解压的镜像文件,点击打开。

目标介质选择sd卡,并且勾选镜像,

2.7烧录固件

将sd卡安装到k230卡槽

点击开始,等待镜像烧录完成。

烧录完成,点击确认,

2.8检测效果

此时重新插拔K230视觉模块的type-C线重新上电。

注意:由于烧录后首次连接需要初始化TF卡的内容,系统可能会弹出无法识别USB设备的问题,重新插拔K230视觉模块的type-C重新连接即可。

重新连接后,在设备管理器的端口出现OpenMV Cam USB COM Port设备号即表示设备运行成功。

img

3.安装编程环境:CanMV IDE for K230

3.1资料获取

230视觉识别模块资料地址:K230视觉识别模块 提取码:pmff

点击右上角的资料汇总下载

3.2安装CanMV IDE for K230

我们打开【0.开发板资料】目录,找到名称为canmv-ide-for-k230_v4.0.7.exe的安装程序

双击打开

点击【下一步 (N)】

img

点击 Browse 可以选择安装目录,为了减少出现异常的可能,请选择一个 不包含中文 的路径

勾选 “我接受此许可”, 点击下一步

后续页面直接点击 【下一步 (N)】和 【安装】即可

安装完成后,CanMV IDE会自动启动

其中

① 区域用来控制 【连接/断开K230】 / 【启动程序】/ 【终止程序】

② 区域是一个串行终端按钮,点击此按钮会打开CanMV自带的串行终端。代码中我们的异常 / 报错 / print() 方法的输出都会在这里显示

③ 区域是一个帧缓冲区,可以理解为一块虚拟的K230的屏幕,可以帮助我们在没有屏幕的情况下,方便的查看、调试 K230的图像输出。

为什么有时候点击 【终止程序】程序没有停下来?

答:点击终止按钮时,实际上会触发一个IDE Interrupt 的 Exception,一般情况下程序会自行终止。但如果代码中涉及到了多线程,或是代码存在阻塞 / 异常捕获等行为,程序有可能会无法完全结束。此时可以长按复位 (RST)键,等待 K230 断开与上位机(电脑)的连接

如何让 K230 插到电脑上时开启(/取消)自动连接到 CanMV IDE ?

开启/关闭工具栏的【工具】-》【自动重新连接到 CanMV】

img

4.调试运行例程

4.1运行例程步

打开CanMV IDE

双击运行我们安装好的CanMV IDE

点击区域 ② 打开串行终端

串行终端的作用是方便我们查看程序运行过程中的调试输出。开启或关闭串行终端不会影响到程序的运行效果

将K230通过USB线连接至电脑

连接成功后,CanMV IDE 左下角的图标会发生变化

如果你没有开启【自动重新连接到CanMV】,则需要手动点击上面的按钮,等待CanMV IDE与K230建立连接

如果已开启自动连接,则等待几秒后,CanMV IDE 能成功的连接到 K230,左下角变成如图所示的样子

加入资源包

在此电脑中找到CanMV,双击击CanMV

双击sdcard

将原本的资源包删掉

打开我们建立的R_R1文件夹中的解压后得到的R_R1的文件,找到对应资源包。

将此资源包粘贴到CanMV中的sdcard文件中

运行例程代码

我们以R_R1为例,打开我们建立的R_R1文件夹中的解压后得到的R_R1的文件,找到det_video_1_3.py

我们双击打开该文件

  1. 你可能看到的文件名是 face_detection,(没有.py)是因为你的电脑系统中没有设置显示文件扩展名
    1. 强烈建议在开发的过程中打开该选项,不同操作系统的开启方法都不相同,这里以win11为例
  2. 如果你没有设置过py后缀默认的打开文件,可以选择用系统自带的记事本软件打开代码

我们选中所有的代码,按下键盘上的 Ctrl + C 组合键,复制全部代码

然后回到CanMV IDE中,清空默认的内容后,按下Ctrl + V,粘贴我们刚刚复制下来的代码

CanMV IDE中新建一份文件会带有默认的一些代码内容,在粘贴之前请先全选并删除这些默认的代码

粘贴成功后,点击左下角绿色的运行按钮,K230将执行R_R1识别功能

点击左下角红色按钮后,可以退出R_R1识别功能

至此,我们就成功的使用 K230 在线运行了一个程序了

4.2离线运行

通过前文提到的方式,我们成功的让K230在在线状态下(连接CanMV IDE)运行了一份R_R1识别的代码,此时代码并没有保存在K230上。

在实际场景中,我们经常需要将代码离线保存在K230中,并且希望K230在通电后就能自动运行相应的代码。

这时候我们只需要在CanMV IDE中,点击工具栏的 【Save open script to CanMV board (as main.py)】即可

注意事项

  1. 请在代码停止运行的情况下点击该按钮,否则可能保存失败
  2. 如果希望删除自动运行的程序,只需要删除K230的/sdcard/目录下的main.py这个文件即可

Demo:https://club.rt-thread.org/ask/article/26da3920c174126e.html

视频:【K230 识别KFS甲骨文-ROBOCON26课设】 https://www.bilibili.com/video/BV1NHSqBqELe/?share_source=copy_web&vd_source=7a6ef9828068d8d45f3a61494c3248ee

3 个赞

感谢开源!

代码现在托管在new_energy_coder_club: 新能源的资料站,搜集所有新能源的竞赛 服务主线任务 openEuler_embedded 的MICA小车 开源人形机器人Duma开发 同时托管NEC2025ROBOCON的仓库
Project_MechDog机器狗_K230_KFS/code/K230_KFS_detection
在这里下载并在真机上 加入相关权重


其他可以参考 K230 的官网教程,目前团队也在积极参与 开源广场 (Yolo形式的 数据集开源的收集)这是一个低成本Demo,可以给出相关的参考,有任何问题,如果在RBCC没有及时回复,请在【机器狗】MechDog Pro + k230 核心沙盘验证 · Issue #ID9FW4 · DarrenPig/new_energy_coder_club - Gitee.com 这里能得到NEC看护者们的及时回复,谢谢:pray: