Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 是否将权重导入opencv MLP?_C++_Opencv_Machine Learning - Fatal编程技术网

C++ 是否将权重导入opencv MLP?

C++ 是否将权重导入opencv MLP?,c++,opencv,machine-learning,C++,Opencv,Machine Learning,假设我想使用其他产品来创建MLP(R、Python、Matlab等等),但我想在opencv下运行该网络,即仅用于预测。假设参数(如激活功能)在培训产品和opencv之间兼容 如何将经过训练的重量导入opencv MLP?也许训练产品为每个层使用权重的MxN矩阵,其中M是输入层,M是输出(因此W(i,j)将是输入节点i和输出节点j之间的权重)。也许偏差存储在单独的N元素向量中。原始格式的细节并不重要,因为只要我知道权重是什么意思以及它们是如何存储的,我就可以根据opencv的需要对它们进行转换

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

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


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

我刚刚遇到了同样的问题。我还没有充分了解Opencv的MLP类,不知道是否有更简单的方法,但是Opencv让您从.xmls和.ymls保存和加载MLP,因此如果您在Opencv中创建ANN,您可以将其保存为这些格式之一,查看它以确定Opencv想要的格式,然后将网络从R/Python/MatLab保存为该格式,或者至少保存为某种格式,并制作一个脚本将其转换为OpenCv的格式。一旦您完成了这项工作,就应该像在代码中实例化opencv的mlp一样简单,您实际上希望使用它来预测并调用加载(“filename”)函数。(我意识到这是事实发生一年后,所以希望你能找到答案或解决办法。如果你找到更好的主意,告诉我,我很想知道)

您必须解析您的模型,就像OpenCV中MLP的“read”函数解析xml或yml一样。我想这不会太难。

我遇到了同样的问题,一开始没有看到你的问题。我认为这是不可能的,因为OpenCV不接受分类数据作为“标签”。这不知怎么搞砸了整个结构。但导入功能将是未来版本的一个好特性。(见附件)