如何理解 OpenCV 程序中引发的这个异常
How to understand this exception raised in an OpenCV program
我的 OpenCV 程序中出现以下异常。我的电脑里有下面的图片,我把它移到我的手机上 phone 并由 Mat imageRead = Highgui.imread("/mnt/sdcard/Pictures/2im00.png");
阅读
然后我尝试使用以下语句将其颜色 space 转换为 HSV,并在该语句中得到异常。
Imgproc.cvtColor(imageRead, hsvImage, Imgproc.COLOR_RGB2HSV);
但是除了在函数 cvtColor
中,异常似乎没有告诉我任何其他信息,或者我无法读取那里的编码信息。
所以问题是我如何找出我收到此异常的原因?
那里是否有任何编码信息,例如一些代码(如 scn==3 或 scn==4 或 error:-215 或 depth 等),我可以在某个地方浏览以找出为什么我得到异常?
最有可能的是,发生断言失败是因为您将空图像传递给 cvtColor 函数。
要么
您传递的 Mat 图像不是 CV_8U 或 CV_32F 格式。
我同意 Miki 的评论以获取更多详细信息,请关注此 link
我的 OpenCV 程序中出现以下异常。我的电脑里有下面的图片,我把它移到我的手机上 phone 并由 Mat imageRead = Highgui.imread("/mnt/sdcard/Pictures/2im00.png");
然后我尝试使用以下语句将其颜色 space 转换为 HSV,并在该语句中得到异常。
Imgproc.cvtColor(imageRead, hsvImage, Imgproc.COLOR_RGB2HSV);
但是除了在函数 cvtColor
中,异常似乎没有告诉我任何其他信息,或者我无法读取那里的编码信息。
所以问题是我如何找出我收到此异常的原因?
那里是否有任何编码信息,例如一些代码(如 scn==3 或 scn==4 或 error:-215 或 depth 等),我可以在某个地方浏览以找出为什么我得到异常?
最有可能的是,发生断言失败是因为您将空图像传递给 cvtColor 函数。 要么 您传递的 Mat 图像不是 CV_8U 或 CV_32F 格式。
我同意 Miki 的评论以获取更多详细信息,请关注此 link