我在Windows上使用Visual Studio和Ubuntu VM(使用CMake)在笔记本电脑上运行OpenCV代码。该代码在两者上都可以正常工作,但是当我尝试在Raspberry Pi 2B上运行该函数cvtColor()
(第205行)时,会导致以下错误:
pi@raspberrypi ~/Desktop/Track1 $ ./TrackObj
init done
opengl support available
OpenCV Error: Assertion failed ((scn == 3 || scn == 4) && (depth == CV_8U || depth == CV_32F)) in cvtColor, file /home/pi/opencv-2.4.10/modules/imgproc/src/color.cpp, line 3961
terminate called after throwing an instance of 'cv::Exception'
what(): /home/pi/opencv-2.4.10/modules/imgproc/src/color.cpp:3961: error: (-215) (scn == 3 || scn == 4) && (depth == CV_8U || depth == CV_32F) in function cvtColor
Aborted
我已经看到一些建议来尝试检查框架是否为空,但是鉴于它没有运行,我不确定如何在此代码中执行该操作。
我也尝试将输入从更改为camera.open(0);
,camera.open("someMovieInFolder.mp4");
但问题仍然存在。
好,我知道了。确实,问题在于图像为空,这就是导致运行时错误的原因。原因是Pi相机。不幸的是,此功能不适用于Pi凸轮(或至少需要进行一些调整),因此插入USB摄像头后,它们都可以正常工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句