因为工作需要,要把matlab中生成好的模型转成C语言烧录到单片机中去,网上找了很久都没有找到怎么做,只好自己读matlab英文文档慢慢学,最后终于转成功了。下面记录一下步骤:

1. 这边使用的是fictree函数生成的决策树模型要转成C语言(注:这里需要看训练的模型函数转成C语言是否需要设置什么参数,否则转换不了,具体的得自己看文档,我的fitctree就必须设置ScoreTransform为none以及Surrogate为off,生成的模型才可以转成C语言),这里的tree是我已经训练好的模型2. 在命令行窗口输入saveLearnerForCoder函数将自己的模型保存为文件,用法如下:

saveLearnerForCoder(tree, 'FMRtree')

    第一个参数为输入的模型,第二个参数为你要保存的文件名

3. 编写函数文件调用模型,这一步是为了给Matlab Coder转化使用,调用模型的函数为loadLearnerForCoder

 4. 打开Matlab Coder工具,转换成C语言或者C++,这里就不再赘述,这一步往上一抓一大把,直接搜matlab转C语言就好了。不过它最后一步可以选择转换的语言要部署在哪一个平台上,这个还是比较牛逼的,还有ROS系统。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐