在opencv 3.1中运行示例代码时出现未处理的异常

时间:2016-03-30 08:07:52

标签: c++ opencv

我正在尝试从opencv 3.1运行一个名为stitching_detailed.cpp的示例代码(顺便说一句,我可以成功构建stitching_detailed.cpp)。但是,它显示以下错误:

Unhandled exception at 0x00007FFDE7011F28 in stitching_detailed.exe: Microsoft C++ exception: cv::Exception at memory location 0x000000935AF3B820.

但是当我从同一个文件夹中运行另一个名为stitching.cpp的示例代码时,它已经构建并成功运行。

我正在使用visual studio 2015.示例代码随附在以下目录中的opencv 3.1:C:\opencv\sources\samples\cpp

其他人认为这是因为错误的环境变量路径或类似的东西,但我相信我的路径没问题,因为其他示例代码运行良好。

编辑1: stitching_detailed.cpp代码的链接是here。当我尝试运行它时,它指向here中以下代码部分的return Ptr<T>(new T());

Ptr<T> makePtr()
{
    return Ptr<T>(new T());
}

我是编码的新手,希望我的设置存在问题而不是代码,假设它经过了充分的测试和维护。

修改2

当我在命令行中运行程序时,它显示了以下错误:

OpenCV Error: The function/feature is not implemented (OpenCV was built without 
SURF support) in cv: : detail: :SurfFeaturesFinder: :SurfFeaturesFinder, file C: \bui 
ldslave64\win64 amdoc1\master PackS1ave-win64-vc14-shared\opencv\modu1es\stitchi 
ng\src\matchers . cpp, line 361 

对于这个opencv版本,似乎没有安装该功能(它位于单独的opencv_contrib模块中)。会尝试一下。

1 个答案:

答案 0 :(得分:0)

发生错误是因为我没有安装单独的opencv_contrib模块,该模块具有程序中使用的功能(SURF功能检测)。使用cmake使用opencv_contrib模块编译opencv后,它运行时没有任何错误。

有关详情,我按照有关通过本网站编辑的说明: https://putuyuwono.wordpress.com/2015/04/23/building-and-installing-opencv-3-0-on-windows-7-64-bit/