visp库中解决lapack库的问题
解决的办法是——绕过去,不要用这个库:
使用中发现如下代码抛出异常:
//vpTemplateTracker.cpp
try {
initHessienDesired(I);
ptTemplateSuppPyr[0] = ptTemplateSupp;
ptTemplateCompoPyr[0] = ptTemplateCompo;
HdesirePyr[0] = Hdesire;
HLMdesirePyr[0] = HLMdesire;
HLMdesireInversePyr[0] = HLMdesireInverse;
} catch (const vpException &e) {
ptTemplateSuppPyr[0] = ptTemplateSupp;
ptTemplateCompoPyr[0] = ptTemplateCompo;
HdesirePyr[0] = Hdesire;
HLMdesirePyr[0] = HLMdesire;
HLMdesireInversePyr[0] = HLMdesireInverse;
throw(e);
}
调用栈是:
#5 0x00007ffff7b33b93 in __cxa_throw () from /lib64/libstdc++.so.6
#6 0x0000000000416b80 in vpTemplateTracker::initHessienDesiredPyr (this=0x7fffffffd470, I=...)
at /data/ahfu/visp/modules/tracker/tt/src/vpTemplateTracker.cpp:756
#7 0x0000000000416603 in vpTemplateTracker::initFromPoints (this=0x7fffffffd470, I=..., v_ip=...,
delaunay=false) at /data/ahfu/visp/modules/tracker/tt/src/vpTemplateTracker.cpp:704
#8 0x0000000000406a47 in main (argc=1, argv=0x7fffffffe358) at test.cpp:148
不太清楚究竟为何抛异常,于是注释掉try catch,重新编译链接执行。
看到了如下异常信息:
#5 0x00007ffff7b33b93 in __cxa_throw () from /lib64/libstdc++.so.6
#6 0x00000000004519b9 in vpMatrix::inverseByLULapack (this=0x7fffffffc390)
at /data/ahfu/visp/modules/core/src/math/matrix/vpMatrix_lu.cpp:385
#7 0x00000000004514ff in vpMatrix::inverseByLU (this=0x7fffffffc390)
at /data/ahfu/visp/modules/core/src/math/matrix/vpMatrix_lu.cpp:133
#8 0x000000000040d477 in vpTemplateTrackerSSDInverseCompositional::initCompInverse (
this=0x7fffffffd470)
at /data/ahfu/visp/modules/tracker/tt/src/ssd/vpTemplateTrackerSSDInverseCompositional.cpp:79
#9 0x000000000040d7c3 in vpTemplateTrackerSSDInverseCompositional::initHessienDesired (
this=0x7fffffffd470, I=...)
at /data/ahfu/visp/modules/tracker/tt/src/ssd/vpTemplateTrackerSSDInverseCompositional.cpp:103
#10 0x00000000004167b1 in vpTemplateTracker::initHessienDesiredPyr (this=0x7fffffffd470, I=...)
at /data/ahfu/visp/modules/tracker/tt/src/vpTemplateTracker.cpp:744
#11 0x0000000000416603 in vpTemplateTracker::initFromPoints (this=0x7fffffffd470, I=..., v_ip=...,
delaunay=false) at /data/ahfu/visp/modules/tracker/tt/src/vpTemplateTracker.cpp:704
#12 0x0000000000406a47 in main (argc=1, argv=0x7fffffffe358) at test.cpp:148
更换了最新的lapack库,仍然无法解决。
查看visp/modules/core/src/math/matrix/vpMatrix_lu.cpp 发现了这样的注释:
111 std::cout << "Inverse by LU ";
112 #if defined(VISP_HAVE_LAPACK)
113 std::cout << "(using Lapack)";
114 #elif defined(VISP_HAVE_EIGEN3)
115 std::cout << "(using Eigen3)";
116 #elif (VISP_HAVE_OPENCV_VERSION >= 0x020101)
117 std::cout << "(using OpenCV)";
118 #elif defined (VISP_HAVE_GSL)
119 std::cout << "(using GSL)";
120 #endif
说明编译选项可以选择不同的库。
于是:
cd /data/ahfu/visp/
mkdir build
cd build
ccmake .. #在界面中把 WITH_LAPACK设置为OFF
cmake ..
make -j
make install
重新编译测试程序运行,一切正常。
visp库中解决lapack库的问题的更多相关文章
- 搜索maven的库中某个支持库的的最新版本
首先放网址(建议挂个vpn): maven库中心:http://search.maven.org/ jcenter库中心:https://bintray.com/bintray/jcenter 接下来 ...
- gdal库中设置prj4库全路径的用法
作者:朱金灿 来源:http://blog.csdn.net/clever101 gdal库实现投影转换之类的功能实际上底层都是调用prj4库的功能.如果gdal使用非静态的方式集成prj4库,实际上 ...
- (转)本地搭建环境wamp下提示不支持GD库的解决方法
转自:http://www.zzdp.net/local-wamp-gd GD库是什么?GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片. ...
- .h头文件 .lib库文件 .dll动态库文件之间的关系
.h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的. 附加依赖项的是.lib不是.dll,若生成了DLL,则肯定也生成 LIB文件.如果要完成源代码的编译和链接,有头文件和lib就够 ...
- Mysql根据一个基库生成其他库与其不同的库升级脚本
今天研究了一下不同数据库之间如何做同步.弄了一个升级工具类,希望以后还能有所帮助. public class UpgradeDataBase { public static void main(Str ...
- Arduino下LCD1602综合探究(下)——如何减少1602的连线,LiquidCrystal库,LiquidCrystal库中bug的解决方法
一.前言: 上文中,笔者系统的阐述了1602的两种驱动方式,并简单的提到了Arduino的LiquidCrystal库.本文紧接上文,对以下两个问题进行更加深入的探讨:如何能够使1602对Arduin ...
- 关于pycharm中安装第三方库时报错的解决办法(一)
记录自己的生活! 一.事发背景 在pycharm中直接安装第三方库时因为版本问题总是无法安装成功,事情不大,但是很重要. 二.经过 最开始我自己电脑上安装了Python3.6和Python2. ...
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】
[Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题4-共享库中嵌套库带路径[已解决] 标签:[Linux开发] 紧接着上一篇,我居然又尝试了一下编译opencv,主要是因为由于交 ...
- OpenCV在ARM-linux上的移植过程遇到的问题3---共享库中嵌套库居然带路径【未解决】
[Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题3-共享库中嵌套库居然带路径[未解决] 标签(空格分隔): [Linux开发] 移植opencv到tq2440 一.下载open ...
随机推荐
- Linux系列
Linux入门及进阶学习. 目录 Linux的安装 GNOME图形界面的基本操作 命令行BASH的基本操作 Linux文件系统的基本结构 Linux文件基本操作管理 Linux系统目录架构 Linux ...
- Spring RestTemplate详解
Spring RestTemplate详解 1.什么是REST? REST(RepresentationalState Transfer)是Roy Fielding 提出的一个描述互联系统架构风格 ...
- 移动端video不全屏播放
<div class="m-video"> <video x5-playsinline="" playsinline="" ...
- 前端入门25-福音 TypeScript
声明 本篇内容摘抄自以下来源: TypeScript 中文网 只梳理其中部分知识点,更多更详细内容参考官网. 正文-TypeScript 今天来讲讲有 Java 基础转 JavaScript 的福音: ...
- css选择器概述
css选择器种类 id选择器 类选择器.属性选择器.伪类选择器 元素选择器.伪元素选择器 通配符选择器.子类选择器.后代选择器.相邻兄弟选择器.选择器分组 一.id选择器 <p id=" ...
- Python 标准类库- 因特网协议于支持之UUID
标准类库- 因特网协议于支持之UUID by:授客 QQ:1033553122 测试环境 python3 UUID生成函数定义 uuid.getnode() 获取一个表示硬件地址的48位正整数.第 ...
- Android 沉浸式状态栏完美解决方案
现在搜索Android 沉浸式状态栏,真的是一堆一堆,写的特别多,但是真正用的舒服的真没有,在这里自己整理一下开发记录 注意,在使用这个步骤过程之前,请把之前设置的代码注释一下 把布局带有androi ...
- ButterKnife的使用详解
ButterKnife的使用详解 1,概述: ButterKnife则是注解中相对简单易懂的很不错的开源框架. ButterKnife是目前常用的一种依托Java注解机制实现辅助代码生成的框架:用到了 ...
- 自托管websocket和webapi部署云服务器域名及远程访问
当写完websocket和webapi服务端时,在本地测试时是没有问题的,因为是通过本地IP及端口号访问(例:127.0.0.1:8080\api\test),也就没有防火墙等安全限制,但当部署到云服 ...
- Go 反射
基本了解 在Go语言中,大多数时候值/类型/函数非常直接,要的话,定义一个.你想要个Struct type Foo struct { A int B string } 你想要一个值,你定义出来 var ...