首页 > 解决方案 > 使用 emeocv 时如何解决“OpenCV 错误:cvCheckTrainData 中的错误参数(训练数据必须是浮点矩阵)”错误?

问题描述

我正在从https://www.mkompf.com/cplus/emeocv.html使用 opencv 学习 emeocv 。我几乎准确地遵循了它。我的编程环境是:

Ubuntu 14.04

opencv-2.4.8+dfsg1

在上面提到的教程页面中,当我到达“主程序”部分时

sudo ./emeocv -i 图片 -l

此命令引发错误

OpenCV 错误:cvCheckTrainData 中的错误参数(训练数据必须是浮点矩阵),文件 /build/buildd/opencv-2.4.8+dfsg1/modules/ml/src/inner_functions.cpp,第 857 行终止在抛出实例后调用'cv::Exception' 的什么():/build/buildd/opencv-2.4.8+dfsg1/modules/ml/src/inner_functions.cpp:857:错误:(-5)训练数据必须是浮点矩阵在函数 cvCheckTrainData

我无法继续进行。

我什至不知道这个文件“/build/buildd/opencv-2.4.8+dfsg1/modules/ml/src/inner_functions.cpp”在哪里。

我该如何解决这个错误,请帮助。

标签: opencv

解决方案


当您之前开始训练模式但没有训练任何数据时,就会发生这种情况。只需删除空的 trainctr.yml 并使用真实数据重新开始。

资源


推荐阅读