将权重导入opencv MLP?

时间:2015-04-25 19:38:24

标签: c++ opencv machine-learning

假设我想使用其他产品来创建MLP(R,Python,Matlab等等),但我想在opencv下运行该网络,即仅用于预测。假设参数(例如激活函数)在训练产品和opencv之间是兼容的。

如何将训练过的权重导入opencv MLP?也许训练产品对每一层使用MxN权重矩阵,其中M是输入层,M是输出(因此W(i,j)将是输入节点i和输出节点j之间的权重。)也许偏差是存储在单独的N元素向量中。原始格式的细节并不重要,因为只要我知道权重的含义以及它们的存储方式,我就可以对它们进行转换,但opencv需要它们。

那么,鉴于此,如何将这些权重导入(仅限运行时预测)opencv MLP? opencv需要什么样的权重偏差(等?)格式,如何设置权重+ baises?

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我还没有足够了解Opencv的MLP课程,知道是否有更简单/更简单的方法,但是OpenCV允许你保存和加载MLP。 xmls和.ymls所以如果你在OpenCV中创建一个ANN,你可以将它保存为其中一种格式,查看它以找出OpenCV想要的格式,然后将你的网络保存到R / Python / MatLab或至少采用某种格式并制作一个脚本,将其从那里翻译成OpenCv的格式。完成后,它应该像在实际上想要使用它来预测和调用负载(" filename")函数的代码中实例化opencv的mlp一样简单。 (我意识到这是事后一年,所以希望你能找到答案或解决。如果你找到了一个更好的主意,请告诉我,我很想知道)。

答案 1 :(得分:-1)

您必须像解读' OpenCV中MLP的功能解析xml或yml。我认为这不会太难。