2017-07-17 141 views
-2

我试过这个示例。它显示红色图像在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工作,不明白是什么意思。

我提前感谢大家的帮助!

+0

命令行PARAMS - 你应该使用图像作为参数调用程序 - 这正是其他论坛告诉你 –

回答

0

您需要为程序指定命令行参数。

选项1:

找到你的编译项目的.exe文件。根据您的配置,它应该位于文件夹“Debug”或“Release”中。

开启在该位置和类型的命令提示:

Exe.exe image.jpg的

埃克是可执行文件和图像的名称是JPG文件的名称你想打开它(它应该位于与.exe相同的文件夹中)。

选项2:

在解决方案资源管理(按Ctrl + Alt + L,如果你不能看到它)右键单击项目的名称,然后点击 “性能”。

Properties

命名为 “属性页” 的窗口应该已经打开。在“配置属性”中单击“调试”。您应该在“命令参数”中输入某个JPG图片的名称。您的项目的EXE位于。

enter image description here

+0

我做到了,但同样的结果“无法打开或找到像” – user7381415

+0

想象您的可执行文件称为“Program.exe”,那么.exe所在的文件夹应至少包含“Program.exe”和“Image.jpg”。所以你必须打开该文件夹中的命令提示符,然后键入“** Program.exe image.jpg **”,而不用引号 – asehu

+0

thanx asehu,我试过但没有任何变化,也许它不是错误 – user7381415