我跟随了这个教程来进行OpenCV物体追踪,并成功在我的笔记本电脑上运行了代码,无论是在Windows上使用Visual Studio,还是在我的Ubuntu虚拟机上(使用CMake)。现在我想在我的树莓派(运行Raspbian)上运行它。
cmake .
和make
命令似乎工作正常,但当我尝试运行可执行文件时,会出现以下错误:pi@raspberrypi ~/Desktop/Track $ ./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
我看过这个问题和类似的问题,但它们没有帮助我解决问题。
源代码在此处可用:
我听说问题可能出在相机或相机驱动程序上,所以我尝试使用USB相机和树莓派相机,并尝试更改capture.open(0);
这一行,改为capture.open("someMovie.mp4");
,这样它将不是打开实时流,而是运行现有视频,但仍然会出现同样的错误。
Capture.open(0);
吗? - DMEM