maixcam如何无脑运行运行别人的模型(以安全帽模型为例)

maixcam如何无脑运行运行别人的模型(以安全帽模型为例)

本文章主要讲如何部署上传的模型文件,以及如果你要把你模型按照该流程应该怎么修改,你可以通过该文章得到你想要的应该,该应用也包含的退出按钮,是屏幕退出按钮,因为屏幕退出方便,所以我引用了sipeed的退出图片,之前的应用没设置退出,非常感谢Neucrack大佬在群中发的有关触摸屏的使用,自己也参考了api文档,直接上干货!!!

如何去使用别人模型应用(我以我的模型为例子)

安装模型应用

扫码安装(方式1)

https://maixhub.com/app网址上目前应该上传的模型应用不多,目前镜像的话还不支持在线下载,后续应该会支持

picture 0

maixvision软件安装模型应用到maixcam(方式2,目前博主是ok的)

(1)下载并解压模型
例如下载本博客的附件maix-hat_detect-v3.0.0.zip并解压
可以得到下面一些文件

picture 1

picture 2

(2)安装模型

打开maixvison然后打开上述解压的文件夹

picture 3

picture 4

选择应用文件,然后全部勾选点击打包,并安装应用
picture 5

picture 6

picture 7

picture 8

断开连接,运行应用

picture 9

点击左上角可以退出应用,后面讲解如何修改为自己的
picture 10

删除应用可以点击app store,卸载应用

picture 11

视频演示链接:
https://www.bilibili.com/video/BV1YZ421n7ui/?spm_id_from=333.999.0.0

该模型整个的压缩包在该文件附件中

如何修改为自己的模型应用

从主函数代码可以看到我导入了sipeed退出图片,使用了ts.read()去读取触摸坐标,再次感谢Neucrack大佬,具体细节可以看api文档,主要就是ts.read()返回一个list,如[0,0,0],其中前两个为x,y坐标,第三个是否触摸状态,触摸了就为1。

博主自己的代码

from maix import camera, display, image, nn, app,time,touchscreen

detector = nn.YOLOv5(model="./yolov5s_hat.mud")
cam = camera.Camera(detector.input_width(), detector.input_height(), detector.input_format())
dis = display.Display()
ts = touchscreen.TouchScreen()
stop_app_img = image.load("./ret.png")
while not app.need_exit():
    img = cam.read()
    img.draw_image(0, 0, stop_app_img)
    state = ts.read()
    if state[2]==1:
        if(state[0]>0 and state[0]<60)and(state[1]>0 and state[1]<60):
            print(123)
            app.set_exit_flag(True)
    objs = detector.detect(img, conf_th = 0.5, iou_th = 0.45)
    for obj in objs:
        img.draw_rect(obj.x, obj.y, obj.w, obj.h, color = image.COLOR_RED)
        msg = f'{detector.labels[obj.class_id]}: {obj.score:.2f}'
        img.draw_string(obj.x, obj.y, msg, color = image.COLOR_RED)
    dis.show(img)

修改你自己的模型只需要替换mud文件以及cvmodel文件,以及记得把这些文件放置到同级目录下,不然找不到路径!!!

感谢

感谢Neucrack大佬

posted @ 2024-04-25 14:27  wuboy19  阅读(17)  评论(0编辑  收藏  举报