人工智能——自学习分类(AI摄像头2.0+乐动掌控)

阿青吖
帖子创建于2021年11月30日 人工智能 1632 次浏览 1 个赞

准备工作:

第一步:安装mPython(0.7.6及以上版本)

第二步:更换主控。

打开mPython软件,单击菜单栏“设置”,选择“高级设置”,在主控窗口单击“更换主控”,选择“乐动掌控”。


第三步:给乐动掌控烧录固件。

利用数据线将乐动掌控与电脑连接,单击菜单栏“设置”,单击“烧录固件”,选择“乐动掌控官方固件”,单击“确定”,等待烧录完成即可。(已刷过最新固件的可以忽略这个步骤)



乐动掌控固件烧录成功如图所示:


第四步:给AI摄像头烧录固件。

先利用数据线将AI摄像头与电脑连接,摄像头接入电脑时,会有两个COM端口,一般选择端口数字较小的,例如COM19、COM20都是摄像头的端口号,那么选择COM19端口,如图。


将摄像头的开关拨向左边,如图所示。


单击mPython菜单栏“设置”,单击“烧录固件”(参考第二步),选择“AI摄像头2.0固件”,单击“确定”。烧录过程需要一定时间,耐心等待烧录完成即可。。


第五步:加载“AI摄像头”扩展库。

单击指令区的“扩展”,再单击“添加”。在扩展库界面单击“AI”,找到“AI摄像头2.0”并单击“加载”,即可在指令扩展区看到AI摄像头的指令。



第六步:连接AI摄像头与乐动掌控

利用连接线将AI摄像头连接到乐动掌控。如果不清楚AI摄像头可以接入乐动掌控哪些引脚,可在“AI摄像头2.0”中拖出初始化摄像头的指令,在引脚下拉项中查看可接入的引脚。


由于AI摄像头采用串口通信的方式,如图所示:


因此,乐动掌控与AI摄像头连接时,按照引脚定义,接入P15、P16引脚(GND VCC P15 P16),乐动掌控与AI摄像头的引脚标识一一对应,其中GND对应GND,VCC对应VCC,P15对应TX1,P16对应RX1,如下图所示。


连接好硬件,利用数据线将乐动掌控与电脑连接,将摄像头的开关拨向右边,如图所示。


案例一:自分类学习

第一步:编写程序。

①先使用变量存放要分类的几类物体的名称,如苹果和玫瑰花:


②设置AI摄像头初始化引脚,配置自学习分类参数分类几种物体,分类数量就设置为相同的数值,理论可分类数量无上限,但也受硬件的限制,该数值尽量不超过10。该数值的大小会影响下面“添加分类图片”的操作。训练集数量是指提供给摄像头学习的图片(照片)的数量,该数量为几种物体图片数量的总和。该数值的大小会影响下面“添加训练集”图片的操作。其中每一类物体的训练集图片数量在5~10张为宜。


③按下AI摄像头左侧的A按键,按顺序依次拍摄要分类物体的图片。

(注意:拍摄的物体顺序和前面初始化列表中物品名称的顺序保持一致,以便后面根据ID对应物体名称时能够准确对应)


④拍摄用于学习的图片,开始学习。按下AI摄像头右侧的B按键,拍摄要识别的几类物体图片,各类物体总数达到前面设定的“训练集数量”时,摄像头自动进入训练学习。

(注意:拍摄用于训练学习的图片时可以不按顺序拍摄,只需保证所有物体照片数量总和等于设置的“训练集数量”参数即可)


⑤AI摄像头识别镜头中拍摄到的物体。完成训练学习后,摄像头会自动进入拍摄识别的工作中。使用变量存放识别到的物体ID号,该ID号是从0开始编号。如果返回的ID号不为空,即有识别到物体,则在软件控制台和掌控板的OLED屏幕上进行显示物品名称。(注意:列表的项和返回的ID编号均是从0开始,所以返回识别到的ID编号正好可以和类别存放的物品名称对应)。完整的参考程序如下:


第二步:添加类别。

程序编写完成后,单击软件菜单栏中的“刷入”按钮,将程序刷入乐动掌控中。待刷入成功后,将摄像头对着物体,按下摄像头的A键,依次录入物体类别。


第三步:添加训练集。

录完类别后,自动进入添加训练集的环节。将摄像头对着苹果,按下摄像头的B键,不同角度拍摄,比如拍5张。


再将摄像头对着玫瑰花,按下摄像头的B键,不同角度拍摄,比如拍5张。


第四步:识别分类。

将摄像头对着已学习的物体类别,OLED 屏显示识别结果(苹果或玫瑰花)。


以上是自学习分类的基础用法,应用自学习分类实现你的想法吧!


文件名:自学习-苹果和玫瑰花.mxml