3

这是代码:

Mat _orange = imread("orange.jpg");
Mat_<Vec3f> orange;
_orange.convertTo(orange, orange.type(), 1.0/255.0);

_orange.convertTo(orange, orange.type(), 1.0/255.0);零件导致错误。

这是错误消息:

OpenCV 错误:未知函数中的断言失败 (!fixedType() || ((Mat*)obj)->type() == mtype)。

PS:我正在使用 Visual Studio 2012 和 OpenCV 2.4.4

4

2 回答 2

0

我的猜测是该cv::Mat::convertTo()方法正在调用该cv::Mat::create()方法为变量中的数据分配内存orange。您应该尝试替换orange.type()CV_32F以使其正常工作。

于 2013-04-17T20:07:58.153 回答
0

尝试像这样向您的 imread 添加参数:

cv::imread("orange.jpg", CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR );
于 2013-04-18T13:19:42.600 回答