我正在尝试从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模块中)。会尝试一下。
答案 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/