2013-04-17 30 views
-2

我想在我的網絡攝像頭輸出中畫一條線。這是我到目前爲止所嘗試的。在Opencv 2.4.5和VC++ 2010中遇到的問題

#include<opencv\cv.h> 
#include<opencv\highgui.h> 

using namespace cv; 
Point p1 = Point(100,80); 
Point p2 = Point(200,80); 
int main(){ 
    Mat image; 
    VideoCapture cap; 
    cap.open(0); 
    namedWindow("window", CV_WINDOW_AUTOSIZE); 
    while(1){ 
     cap>>image; 
     imshow("window", image); 
     line(image,p1,p2,Scalar(0,255,0),2); 
     waitKey(33); 
    } 
    return 0; 
} 

回答

1

您的代碼首先顯示圖像,然後繪製一條線 - 它不起作用,您必須先畫線。

while(1){ 
    cap>>image; 
    line(image,p1,p2,Scalar(0,255,0),2); 
    imshow("window", image); 
    waitKey(33); 
}