NN 规范
2025-09-30
======
神经网络模型文件
每个 AI 模型都使用 .mud 文件进行描述,这是一种 INI 格式的文件。
MUD(Model Universal Description,模型通用描述)文件是一种简单的模型描述格式。
创建这个文件的原因在于,各种硬件平台的模型格式不同,无法直接加载,我们需要编写多种不同的代码来加载模型。而现在使用 MUD 文件,只需在其中写入模型信息,即可简化模型加载过程。
MUD 文件定义如下:
[basic]
type = cvimodel
model = model_path_relative_to_mud_file
[extra]
model_type = classifier
input_type = bgr
mean = 103.94, 116.78, 123.68
scale = 0.017, 0.017, 0.017
labels = labels.txt
basic 部分是必需的,extra 部分是可选的。
basic部分描述了模型的类型和模型路径。type表示模型类型,目前支持MaixCam的cvimodel类型。model表示模型的相对路径,相对于 MUD 文件所在位置。
extra部分描述了模型的额外信息,应用程序可以通过model.extra_info()方法获取。model_type表示模型的功能类型,如classifier(分类器)和yolov2(目标检测),此项为可选。input_type表示模型的输入类型,如bgr和gray(灰度图),此项为可选。mean表示模型输入的均值,此项为可选。scale表示模型输入的缩放比例,此项为可选。labels表示模型标签文件的路径,此项为可选。
当前 MaixCDK 支持的模型类型:
classifierclassifier_no_topyolo11yolov8yolov5pp_ocrretinafacenanotrackface_detectorspeech- 以及更多类型,详情请参考 components/nn/include 源代码,并搜索
model_type关键字查看load方法。