我试过这个示例。它显示红色图像在visual studio 2010中集成OpenCV
Mat img(400,400,CV_8UC3, Scalar(0,0,255));
imshow("lalala", img);
waitKey();
而这种代码opennig网络摄像头它的工作:
#include <opencv\cv.h>
#include <opencv\highgui.h>
using namespace cv;
int main()
{
Mat image;
VideoCapture cap;
cap.set(CV_CAP_PROP_FRAME_WIDTH, 640);
cap.set(CV_CAP_PROP_FRAME_HEIGHT, 480);
cap.open(0);
namedWindow("window",1);
while(1)
{
try
{
cap>>image;
imshow("window",image);
}
catch (Exception& e)
{
const char* err_msg = e.what();
std::cout << "exception caught: imshow:\n" << err_msg << std::endl;
}
waitKey(33);
}
}
但是这个代码,它表明:使用方法:display_image ImageToLoadAndDisplay:
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
if(argc != 2)
{
cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
return -1;
}
Mat image;
image = imread(argv[1], IMREAD_COLOR); // Read the file
if(! image.data) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl ;
return -1;
}
namedWindow("Display window", WINDOW_AUTOSIZE); // Create a window for display.
imshow("Display window", image); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}
会有人帮助我找到成为的错误,我真的被封锁了。我认为在windows 8.1中我的opencv 2.4.9在visual studio 2010中的集成是正确的,因为我遵循opencv的官方网站中的步骤,图像的路径也是正确的,但我认为代码中存在问题,因为如果问题出在安装,任何程序都可以工作(openig网络摄像头或红色图像)。
我问这个问题在其他论坛上得到的答复是:
这不是一个OpenCV的问题,你可能想看看起来,把手CMDLINE如何 PARAMS(你的计划预计将给予路径到 图像),图像的路径是预期的。
但它是我第一次与Visual Studio和opencv.I工作,不明白是什么意思。
我提前感谢大家的帮助!
命令行PARAMS - 你应该使用图像作为参数调用程序 - 这正是其他论坛告诉你 –