互动
最近评论
标签
寻找感兴趣的领域

K230

K230是嘉楠科技推出的高性能RISC-V架构AIoT芯片,采用12nm工艺,集成双核RISC-V处理器和第三代KPU,主频达1.6GHz,支持6TOPS AI算力,具备三路4K视频输入和丰富外设接口,广泛应用于智能家居、智能教育、机器人等领域,为边缘计算和多模态交互提供强大支持。

K230的开发方式除了SDK编译外,还支持使用CanMV IDE进行开发。CanMV IDE是基于OpenMV项目开发的集成开发环境,专为K230优化,支持MicroPython开发。用户可以通过IDE快速编写、运行代码,并实时查看运行结果和图像预览。IDE支持连接开发板进行调试,还提供丰富的示例代码,方便开发者快速上手。非常推荐使用CanMV IDE,基于Micropython开发可节省大量时间成本,其提供了大量的API函数,如GPIO、IIC、SPI、UART、ADC、Timer、音频、MP4等等,只需略微参考即可快速上手开发。

此外,我推荐的原因是他以较低的价格但拥有较高的算力,在AI部分封装了大量的API函数,主要如下:

用户只需要关注预处理配置和后处理过程,尤其是YOLO部分只需要把pt模型转换为kmodel模型即可,经测试在较高的图像分辨率的情况下也可以达到十多帧的效果,作为简单应用已经足够了。

接下来展示以下YOLO示例代码,可以看出经过封装后的代码十分简洁明了。

from libs.PipeLine import PipeLine, ScopedTiming
from libs.YOLO import YOLOv8
import os,sys,gc
import ulab.numpy as np
import image

if __name__=="__main__":
    # 显示模式,默认"hdmi",可以选择"hdmi"和"lcd"
    display_mode="hdmi"
    rgb888p_size=[1280,720]
    if display_mode=="hdmi":
        display_size=[1920,1080]
    else:
        display_size=[800,480]
    # 可以根据您的模型自行修改路径参数
    kmodel_path="/data/yolo_kmodels/cls_yolov8n_224.kmodel"
    labels = ["apple","banana","orange"]
    confidence_threshold = 0.8
    model_input_size=[224,224]
    # 初始化PipeLine
    pl=PipeLine(rgb888p_size=rgb888p_size,display_size=display_size,display_mode=display_mode)
    pl.create()
    # 初始化YOLOv8实例
    yolo=YOLOv8(task_type="classify",mode="video",kmodel_path=kmodel_path,labels=labels,rgb888p_size=rgb888p_size,model_input_size=model_input_size,display_size=display_size,conf_thresh=confidence_threshold,debug_mode=0)
    yolo.config_preprocess()
    try:
        while True:
            os.exitpoint()
            with ScopedTiming("total",1):
                # 逐帧推理
                img=pl.get_frame()
                res=yolo.run(img)
                yolo.draw_result(res,pl.osd_img)
                pl.show_image()
                gc.collect()
    except Exception as e:
        sys.print_exception(e)
    finally:
        yolo.deinit()
        pl.destroy()


评论
你无需删除空行,直接评论以获取最佳展示效果
引用到评论