所以我剛剛在兩週前開始使用C++和OpenCV,並不完全確定自己在做什麼。基本上,我想給一個矩形名稱,以便我可以稍後使用它,如果我需要,我不知道如何做到這一點。 我當前的代碼:如何爲CamShift的矩形輸入參數定義一個矩形變量?
Point p1= Point(0,0);
Point p2= Point(backproj.rows/4,backproj.cols/4);
rectangle trackWindow = rectangle(backproj, p1, p2, Scalar(0,255,0), 3, 8, 0);
RotatedRect trackBox = CamShift(backproj, trackWindow, TermCriteria(CV_TERMCRIT_EPS | CV_TERMCRIT_ITER, 10, 1));
這將引發的錯誤:
CamShift_Upload.cpp:108:12: error: expected ‘;’ before ‘trackWindow’
CamShift_Upload.cpp:108:79: error: statement cannot resolve address of overloaded function
CamShift_Upload.cpp:109:44: error: ‘trackWindow’ was not declared in this scope
所以我顯然不聲明矩形變量的方式,我應該,但我不知道的正確方法。任何幫助都會很棒。
解決方法:需要的Camshift「矩形」對象不是「矩形」。 '矩形'是繪圖功能,不是結構。哎呀 – cirea22