目标
通过在Vision Board部署openMV实现垃圾分类。
一、基础设置
(一)配置摄像头
Vision Board自带摄像头,按照电路图使用瑞萨的FSP可以很方便的配置好。首先在stack中new一个Capture Engine Unit(r_ceu)。
然后如下配置:
同样配置好TF卡、RW007等设备,保存配置生成基础文件。
(二)配置openMV
直接在RT-Studio上设置好相关选项。
顺便把SDRAM等打开。保存工程,打开工程执行编译后下载到Vision Board开发板,检查下openMV是否正常运行。
MicroPython v1.13-148-ged7ddd4 on 2020-11-03; RA8 with RT-Thread Type "help()" for more information. >>>
二、模型选择
因为时间问题,来不及自己训练模型。于是在gayhub上找了几个星比较多的模型。
当然也可以自己收集相关图像使用edgeimpulse训练模型,相关[教程在此](Open MV Cam H7 Plus | Edge Impulse Documentation)。
本次直接将labels.txt 和 rubbish.tflite拷贝到Vision Board开发板的TF卡中,edgeimpulse生成的py脚本直接用上。
三、功能实现
edgeimpulse生成的py脚本内容如下:
import sensor, image, time, os, tf sensor.reset() # Reset and initialize the sensor. sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE) sensor.set_framesize(sensor.QVGA) # Set frame size to QVGA (320x240) sensor.set_windowing((240, 240)) # Set 240x240 window. sensor.skip_frames(time=2000) # Let the camera adjust. net = "rubbish.tflite" labels = [line.rstrip('n') for line in open("labels.txt")] clock = time.clock() while(True): clock.tick() img = sensor.snapshot() # search the image... for obj in tf.classify(net, img, min_scale=1.0, scale_mul=0.8, x_overlap=0.5, y_overlap=0.5): print("**********nPredictions at [x=%d,y=%d,w=%d,h=%d]" % obj.rect()) predictions_list = list(zip(labels, obj.output())) for i in range(len(predictions_list)): print("%s = %f" % (predictions_list[i][0], predictions_list[i][1]))
四、结果输出
通过openMV连接Vision Board开发板,运行上述py脚本。
找来一个水瓶和旧电池。
结果如下,这个水瓶形状不规则,所以……
五、总结
Vision Board开发板在部署openMV的时候,240X240的图像FPS可以达到10左右,说明性能还是比较强大。
同时,因为瑞萨制程,运行案例时候,MCU发热量控制的相当不错,很是惊喜。
RT-Thread集成了openMV后,可以很方便的部署一些简单的图像识别和AI应用,背靠openMV社区,大有可为。
审核编辑 黄宇
-
开发板
+关注
关注
25文章
4618浏览量
95185 -
模型
+关注
关注
1文章
2887浏览量
48086 -
RT-Thread
+关注
关注
31文章
1201浏览量
39063 -
openMV
+关注
关注
3文章
30浏览量
9731
发布评论请先 登录
相关推荐
【Vision Board创客营连载体验】RA8D1 Vision Board上的SPI实践
【Vision Board创客营连载体验】RA8D1 Vision Board初体验
【Vision Board创客营连载体验】RA8D1-Vision Board开箱使用
【Vision Board创客营连载体验】利用 OpenMV 实现 AprilTag 跟踪以及通过串口通讯控制 Arduino 驱动 LED 灯带
【Vision Board创客营连载体验】基于Vision Board的垃圾分类
【Vision Board创客营连载体验】基于RA8D1-Vision Board的自动路径规划小车
“你是什么垃圾?”垃圾分类机器人是否成为未来垃圾分类的福音?
OpenMV Cam上的RPC模块
机器视觉RT-Thread Vision Board主要特点
RA8D1 Vision Board上的SPI loopback测试
![RA8D1 <b class='flag-5'>Vision</b> <b class='flag-5'>Board</b><b class='flag-5'>上</b>的SPI loopback测试](https://file1.elecfans.com/web2/M00/D5/61/wKgZomYmhR-AC-OjAAFQXPBsYLs808.png)
【Vision Board 创客营】Vision Board上的DAC实践
![【<b class='flag-5'>Vision</b> <b class='flag-5'>Board</b> 创客营】<b class='flag-5'>Vision</b> <b class='flag-5'>Board</b><b class='flag-5'>上</b>的DAC实践](https://file1.elecfans.com//web2/M00/D8/1E/wKgZomYpDzqAdS8nAADmXgiVzgU755.png)
Vision-Board 使用TinyUSB驱动Xbox游戏手柄
![<b class='flag-5'>Vision-Board</b> 使用TinyUSB驱动Xbox游戏手柄](https://file1.elecfans.com/web2/M00/E4/CC/wKgaomY90NmAByldAABFuMW07KQ032.png)
Vision-Board 使用TinyUSB驱动Xbox游戏手柄
![<b class='flag-5'>Vision-Board</b> 使用TinyUSB驱动Xbox游戏手柄](https://file1.elecfans.com/web2/M00/C4/8A/wKgZomX0EhWACv8DAAAUet8ikhs451.png)
评论