如何理解OpenCV程序中引发的此异常

时间:2015-12-10 22:44:24

标签: android opencv image-processing opencv3.0 opencv4android

enter image description here

我的OpenCV程序中有以下异常。我的计算机中有以下图像,我将其移至手机并通过Mat imageRead = Highgui.imread("/mnt/sdcard/Pictures/2im00.png");

阅读

enter image description here

然后我尝试使用以下语句将其颜色空间转换为HSV,并在此语句中获得异常。

Imgproc.cvtColor(imageRead, hsvImage, Imgproc.COLOR_RGB2HSV);

但异常似乎并没有告诉我它在函数cvtColor中的含义,或者我无法在那里读取编码信息。

所以问题是我怎么知道为什么我会得到这个例外?

那里是否有任何编码信息,如某些代码(如scn == 3或scn == 4或错误:-215或深度等等),我可以在某处浏览以找出我获得异常的原因?

1 个答案:

答案 0 :(得分:2)

最有可能的是,由于您将空图像传递给cvtColor函数,因此会发生断言失败。 要么 您传递的Mat图像不是CV_8U或CV_32F格式。

我同意Miki的评论更多详情,请点击此链接How to interpret c++ opencv Assertion error messages due to an error in cvtColor function?