我跟踪了OpenCV对象跟踪的this tutorial,并设法使我的笔记本电脑上的代码可以正常工作,这两种情况都使用Visual Studio和Windows在我的Ubuntu VM上(使用CMake)。现在我尝试在我的Raspberry Pi上运行它(运行Raspbian)。 cmake .
和make
命令似乎工作正常,但是当我尝试运行可执行文件,我得到以下错误:openCV错误:Raspberry Pi上的断言失败(scn == 3 || scn == 4)
[email protected] ~/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
我已经看了this question和它相似的,但它并没有帮助我解决问题。
这里可用的源代码:
我听说,这个问题可能是用相机或摄像头驱动程序,所以我尝试使用USB摄像头以及pi相机,我也尝试将capture.open(0);
行更改为capture.open("someMovie.mp4");
,因此,不要打开直播流,它会运行在一个退出的视频,但它仍然给我同样的错误。
也许试试它预载的图像,你完全确信的大小,格式等。这是因为它可能是以完全意想不到的方式从网络摄像头读取。 – GPPK 2015-04-02 13:55:29
你能更具体吗?你的意思是我应该改变'Capture.open(0);'? – DMEM 2015-04-02 14:11:18
你使用树莓派相机吗? – theoB610 2015-12-15 10:12:37