2 sinat 34628809 sinat_34628809 于 2016.05.11 12:02 提问

SURF+视频帧判断 总是崩溃 2C

想用SURF特征点来检测视频两帧间的差别,进而判断出场景转变的位置,可是每次到转场帧的时候就崩溃

附上代码 谢谢各位了!

//---------------------------------【头文件、命名空间包含部分】----------------------------
// 描述:包含程序所使用的头文件和命名空间
//------------------------------------------------------------------------------------------------
#include
#include
#include
#include
#include
using namespace cv;
using namespace std;

int main( int argc, char** argv )
{
int framecount=1 ;
//【1】载入源图片
Mat img_1 ,img_2 ;
VideoCapture capture ("F:\VS项目库\网上下载的镜头分割程序\TEST\TEST\333.avi") ;

capture>>img_1 ;

    //【2】利用SURF检测器检测的关键点
int minHessian = 700;
SurfFeatureDetector detector( minHessian );
SurfFeatureDetector(SURF);
vector<KeyPoint> keypoints_1, keypoints_2;
detector.detect( img_1, keypoints_1 );

    //【3】计算描述符(特征向量)
SurfDescriptorExtractor extractor ;
Mat descriptors_1, descriptors_2;
extractor.compute( img_1, keypoints_1, descriptors_1 );



while(1)
{


capture>>img_2 ;
imshow("原图",img_2) ;
waitKey(30) ;

detector.detect( img_2, keypoints_2 );
extractor.compute( img_2, keypoints_2, descriptors_2 );

//实例化一个匹配器
BruteForceMatcher< L2<float> >matcher ;
vector<DMatch>matches ;
matcher.match(descriptors_1 ,descriptors_2 ,matches)  ;

int num = matches.size();
if(num<10)
    cout <<framecount <<endl ;
if(num>0)
descriptors_1=descriptors_2 ;


//img_1 = img_2 ;
framecount++ ;


}
waitKey(0);
return 0;

}

币不多 新手望见谅 谢谢!!

1个回答

silehaixianghuirenj
silehaixianghuirenj   2016.10.08 01:23

征点来检测视频两帧间的差别,进而判断出场景转变的位置,可是每次到转场帧的时候就崩溃
附上代码 谢谢各位了!
//---------------------------------【头文件、命名空间包含部分】----------------------------
// 描述:包含程序所使用的头文件和命名空间
//------------------------------------------------------------------------------------------------
#include
#include
#include
#include
#include
using namespace cv;
using namespace std;
int main( int argc, char** argv )
{
int framecount=1 ;
//【1】载入源图片
Mat img_1 ,img_2 ;
VideoCapture capture ("F:\VS项目库\网上下载的镜头分割程序\TEST\TEST\333.avi") ;
capture>>img_1 ;

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!