0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Vision Board上的openMV垃圾分类

发烧电子爱好者 来源:发烧电子爱好者 作者:发烧电子爱好者 2024-06-17 10:49 次阅读

目标

通过在Vision Board部署openMV实现垃圾分类。

一、基础设置

(一)配置摄像头

Vision Board自带摄像头,按照电路图使用瑞萨的FSP可以很方便的配置好。首先在stack中new一个Capture Engine Unit(r_ceu)。

wKgZomZuqfyAd6SEAABHqx92t3Q679.png

然后如下配置:

wKgZomZuqbmAXuC4AAKaGnq1LVU142.png

同样配置好TF卡、RW007等设备,保存配置生成基础文件。

(二)配置openMV

直接在RT-Studio上设置好相关选项。

wKgZomZuqt2AdErmAAHYHwGFwk0213.png

顺便把SDRAM等打开。保存工程,打开工程执行编译后下载到Vision Board开发板,检查下openMV是否正常运行。

wKgZomZurUGATW3sAAOHeuWKsHU956.png

看看micropython信息

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脚本。

找来一个水瓶和旧电池。

wKgZomZusYOALEEQAAJC6upo_gM597.png

结果如下,这个水瓶形状不规则,所以……

wKgaomZusheABsWLAABByZwz2DQ657.png

五、总结

Vision Board开发板在部署openMV的时候,240X240的图像FPS可以达到10左右,说明性能还是比较强大。
同时,因为瑞萨制程,运行案例时候,MCU发热量控制的相当不错,很是惊喜。
RT-Thread集成了openMV后,可以很方便的部署一些简单的图像识别和AI应用,背靠openMV社区,大有可为。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    4933

    浏览量

    97157
  • 模型
    +关注

    关注

    1

    文章

    3158

    浏览量

    48700
  • RT-Thread
    +关注

    关注

    31

    文章

    1271

    浏览量

    39901
  • openMV
    +关注

    关注

    3

    文章

    39

    浏览量

    9794
收藏 人收藏

    评论

    相关推荐

    Vision Board创客营连载体验】RA8D1 Vision Board的SPI实践

    层次的体验。 Vision Board搭载全球首颗 480 MHz Arm Cortex-M85芯片,拥有Helium和TrustZone技术的加持。SDK包里集成了OpenMV机器视觉例程,配合MicroPython
    发表于 04-22 23:56

    Vision Board创客营连载体验】RA8D1 Vision Board初体验

    1 RA8D1 Vision Board简介 Vision-Board 开发板是 RT-Thread 推出基于瑞萨 Cortex-M85 架构 RA8D1 芯片,拥有Helium和TrustZone
    发表于 04-23 21:53

    Vision Board创客营连载体验】RA8D1-Vision Board开箱使用

    Vision Board搭载全球首颗 480 MHz Arm Cortex-M85芯片RA8D1 :6.39 CoreMark/MHz,可以快速而高效地运行机器视觉算法,实现图像处理、等功能。包括
    发表于 04-27 21:34

    Vision Board创客营连载体验】基于Vision Board垃圾分类

    目标 通过在Vision Board部署openMV实现垃圾分类。 一、基础设置 (一)配置摄像头 Vi
    发表于 06-16 17:41

    Vision Board创客营连载体验】基于RA8D1-Vision Board的自动路径规划小车

    电机和编码器实现,大脑使用RA8D1-Vision Board开发板的openmv固件完成障碍识别和底盘移动控制,两个部分使用串口进行通讯。 二、底盘:(1)底盘使用普通车轮以菱形布局,可实现类
    发表于 06-18 15:33

    如何在openmv中实现图传功能?

    Vision boardopenmv固件wifi只能实现连接,一些通信和物联网也用不了。如果我要实现在openmv中的图传功能该怎么做呢,求助各位大佬
    发表于 07-09 06:36

    Vision Board使用openmv无法下载脚本怎么解决?

    下载完官方的固件后成功连接openmv IDE 想尝试脱机运行,但是保存的的选项选择不了
    发表于 07-11 06:59

    “你是什么垃圾?”垃圾分类机器人是否成为未来垃圾分类的福音?

    “你是什么垃圾?”这是上海乃至全国大妈的垃圾拷问通用语,垃圾分类机器人能否成为未来垃圾分类的人类
    的头像 发表于 07-17 14:53 2898次阅读

    OpenMV Cam的RPC模块

    OpenMV Cam 的rpc模块允许您将 OpenMV Cam 连接到另一台微控制器或计算机,并在 OpenMV Cam 执行远程 P
    的头像 发表于 10-08 10:28 1395次阅读

    机器视觉RT-Thread Vision Board主要特点

    ,6.39 CoreMark/MHz,可以快速而高效地运行机器视觉算法,实现图像处理、等功能。 完整支持OpenMV生态: Vision Board完全兼容OpenMV开发平台,用户可
    的头像 发表于 04-15 08:35 544次阅读

    Vision_Board_schematic

    Vision_Board_schematic
    发表于 03-20 09:59 9次下载

    RA8D1 Vision Board的SPI loopback测试

    更深层次的体验。   Vision Board搭载全球首颗 480 MHz Arm Cortex-M85芯片,拥有Helium和TrustZone技术的加持。SDK包里集成了OpenMV机器视觉例程
    的头像 发表于 04-23 00:00 879次阅读
    RA8D1 <b class='flag-5'>Vision</b> <b class='flag-5'>Board</b><b class='flag-5'>上</b>的SPI loopback测试

    Vision Board 创客营】Vision Board的DAC实践

    1、概述 感谢官方举办【Vision Board 创客营】活动,使得我有机会试用Vision Board开发板,体验嵌入式AI的快乐。在此,再次感谢官方以及导师们的热情帮助。在本次活动
    的头像 发表于 04-24 21:55 548次阅读
    【<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实践

    Vision-Board 使用TinyUSB驱动Xbox游戏手柄

    Vision-Board社区有大佬搞新活了! 如果手上有XBOX手柄的话赶快掏出你的Vision-Board 体验下: 接下来看看KunYi大佬如何进行添加的Xbox支持的: 准备工作
    的头像 发表于 05-10 15:42 472次阅读
    <b class='flag-5'>Vision-Board</b> 使用TinyUSB驱动Xbox游戏手柄

    Vision-Board 使用TinyUSB驱动Xbox游戏手柄

    Vision-Board社区有大佬搞新活了!如果手上有XBOX手柄的话赶快掏出你的Vision-Board体验下:接下来看看KunYi大佬如何进行添加的Xbox支持的:准备工作:Vision-Bo
    的头像 发表于 05-11 08:35 403次阅读
    <b class='flag-5'>Vision-Board</b> 使用TinyUSB驱动Xbox游戏手柄