2

我使用 DIGIT 进行分类(我使用自适应梯度、随机梯度下降和 Nesterov 的加速梯度测试 GoogLeNet)。图像为彩色和 256*256。训练后,我使用“测试单个图像”选项并测试一个图像。结果是显示完美匹配并正确分类图像。然后我使用下载的模型在基于“ http://docs.opencv.org/trunk/d5/de7/tutorial_dnn_googlenet.html ”的OpenCV 3.1(windows 64bit,visual studio 2013,Nvidia GPU)中应用。但是,我总是得到不同的课程和错误的答案。
编辑:
我尝试cvtColor(img, img, COLOR_BGR2RGB)并没有解决问题。我还是得到了错误的结果。我尝试不同data transformationsnone,imagepixel. 也不同solver type

4

2 回答 2

2

如果 OpenCV 3 vs 2 引起了这个问题,我会感到惊讶。相反,我预计这种差异是由于数据预处理的差异造成的。

这是一个如何对在 DIGITS 中训练的 Caffe 模型进行数据预处理的示例: https ://github.com/NVIDIA/DIGITS/blob/v4.0.0/examples/classification/example.py#L40-L85

还要确保您阅读了这些“陷阱”:https ://github.com/NVIDIA/DIGITS/blob/v4.0.0/examples/classification/README.md#limitations

于 2016-10-10T16:21:29.210 回答
1

OpenCV 默认使用现在非常罕见的 BGR(蓝色、绿色、红色)颜色通道排序。正常是RGB。

为什么 OpenCV 使用 BGR 颜色空间而不是 RGB

这可以解释模型的糟糕表现。

于 2016-10-07T08:52:08.170 回答