【问题标题】:Optical flow based tracking of quadrilateral points in OpenCVOpenCV中基于光流的四边形点跟踪
【发布时间】:2014-03-05 13:23:57
【问题描述】:

我正在尝试在视频序列中使用光流法跟踪四边形。四边形由用户在开始时提供。它可以在很短的时间内正常工作,但随着物体旋转,跟踪开始失败。有人可以如何改进这种跟踪吗?感兴趣的对象是摩托车上的车牌,它在序列中具有旋转和平移运动。最初的四个点(车牌的四个角)由用户选择。 我也尝试过使用 SHIFT 描述符,但我没有在感兴趣区域的连续帧之间获得足够的匹配点。

 std::vector<cv::Point2f> feature_prev, feature_next;
        std::vector<uchar> status_vector;
        std::vector<float> status_error;
        cv::TermCriteria termcrit;
        cv::Size subPixWinSize, winSize;

        cv::Mat prevFrame;
        cv::Mat currFrame;
 feature_next.push_back(cv::Point2f((float)refRoi.P1().x,(float)refRoi.P1().y));
        feature_next.push_back(cv::Point2f((float)refRoi.P2().x,(float)refRoi.P2().y));
        feature_next.push_back(cv::Point2f((float)refRoi.P3().x,(float)refRoi.P3().y));
        feature_next.push_back(cv::Point2f((float)refRoi.P4().x,(float)refRoi.P4().y));


     cv::cvtColor(srcCpy, currFrame, CV_BGR2GRAY);
            cv::equalizeHist(currFrame, currFrame);

           // cv::Mat srcMat(srcGray.operator const IplImage *());
           // dst = src;
            if(!feature_prev.empty())
            {
                status_vector.clear();
                status_error.clear();
                feature_next.clear();
                cv::calcOpticalFlowPyrLK(prevFrame, currFrame,feature_prev,feature_next,status_vector,status_error, winSize, 5, termcrit, 0, 0.001);
                size_t i, k;
                for( i = k = 0; i < feature_next.size(); i++ )
                {
                    if( !status_vector[i] )
                    {
                        continue;
                    }
                    feature_next[k++] = feature_next[i];

                    circle( srcCpy, feature_next[i], 3, cv::Scalar(0,255,0), -1, 8);
                }

                feature_next.resize(k);
           }

【问题讨论】:

    标签: c++ opencv computer-vision


    【解决方案1】:

    【讨论】:

    • 感谢您的信息,我将开始调查。
    猜你喜欢
    • 2021-08-29
    • 1970-01-01
    • 2012-03-30
    • 1970-01-01
    • 2014-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多