のcontribリポジトリ(トラッカー、selectROI)からモジュールを見つけることができません。これは、私がオンラインだサンプルコードです:私はOpenCVの3.1.0と対応のcontribリポジトリを再インストールしようとした、そしてそれはように思われたOpenCVのは:私は、トラッキングオブジェクトが関与するプロジェクトに取り組んでいる、と私はOpenCVのcontribのレポのTrackerKCF作業を取得しようとしている
tracktest.cpp: In function ‘int main(int, char**)’:
tracktest.cpp:33:7: error: ‘Tracker’ was not declared in this scope
Ptr<Tracker> tracker = TrackerKCF::create();
^
tracktest.cpp:33:14: error: template argument 1 is invalid
Ptr<Tracker> tracker = TrackerKCF::create();
^
tracktest.cpp:33:26: error: ‘TrackerKCF’ has not been declared
Ptr<Tracker> tracker = TrackerKCF::create();
^
tracktest.cpp:43:54: error: ‘selectROI’ was not declared in this scope
Rect2d roi= selectROI("tracker", frame, true, false);
^
tracktest.cpp:50:10: error: base operand of ‘->’ is not a pointer
tracker->init(frame,roi);
^
tracktest.cpp:63:27: error: base operand of ‘->’ is not a pointer
bool isfound = tracker->update(frame,roi);
^
./tracktest.sh: line 5: ./tracktest: No such file or directory
:しかし、私は次のエラーを得た
#include <opencv2/core/utility.hpp>
#include <opencv2/video/tracking.hpp>
#include <opencv2/videoio.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
#include <cstring>
using namespace std;
using namespace cv;
int main(int argc, char** argv){
// show help
if(argc<2){
cout<<
" Usage: example_tracking_kcf <video_name>\n"
" examples:\n"
" example_tracking_kcf Bolt/img/%04.jpg\n"
" example_tracking_kcf faceocc2.webm\n"
<< endl;
return 0;
}
// create the tracker
Ptr<Tracker> tracker = TrackerKCF::create();
// set input video
std::string video = argv[1];
VideoCapture cap(video);
Mat frame;
// get bounding box
cap >> frame;
Rect2d roi= selectROI("tracker", frame, true, false);
//quit if ROI was not selected
if(roi.width==0 || roi.height==0)
return 0;
// initialize the tracker
tracker->init(frame,roi);
// do the tracking
printf("Start the tracking process, press ESC to quit.\n");
for (;;){
// get frame from the video
cap >> frame;
// stop the program if no more images
if(frame.rows==0 || frame.cols==0)
break;
// update the tracking result
bool isfound = tracker->update(frame,roi);
if(!isfound)
{
cout << "The target has been lost...\n";
waitKey(0);
return 0;
}
// draw the tracked object
rectangle(frame, roi, Scalar(255, 0, 0), 2, 1);
// show image with the tracked object
imshow("tracker",frame);
//quit on ESC button
if(waitKey(1)==27)break;
}
}
make
は正常に完了しました。私はまた、tracker.cpp
がOpenCVのソースディレクトリにある場所を見つけようとしましたが、何も表示されませんでした。
私は私が間違ってcontribモジュールをインストールしているからだと仮定し、私はよく分かりません。誰が間違っているのか理解できますか?前もって感謝します。ため、私はmake install
を実行するのを忘れて、私の不可解な愚かさに
Iは、トラッカーヘッダファイルは ''ですね。このファイルをインクルードし、動作するか確認してください。 –
sgarizvi
'tracking.hpp'はありません: 'tracktest.cpp:16:32:致命的なエラー:opencv2/tracking.hpp:そのようなファイルやディレクトリがありません コンパイルが終了しました ./tracktest.sh:行5:./ tracktest:私はこれはすでに 'に含まれていたと思ったそのようなファイルまたはディレクトリも ' – zeklewa
する#include '私はまだエラーが出る –
zeklewa