凸透视法。

cvxpnpl的Python项目详细描述


cvxpnpl

凸透视法。

title:cvxpnpl:从点和线对应出发求解绝对位姿估计问题的统一凸解

abstract:我们提出了一种新的基于二维点与线对应的混合组合估计三维姿态的凸方法,即透视n点与线问题(pnpl)。我们将每个点和线的贡献合并为一个统一的二次约束二次问题(qcqp),然后通过shor松弛将其松弛为一个半定规划(sdp)。这使得能够优雅地处理点和线的混合配置。此外,所提出的松弛允许我们在不明确的构形下恢复有限个解。在这种情况下,通过进一步对解空间施加几何约束,然后从多个二次曲面的交点处检索这些姿势,可以找到三维姿势候选。实验提供了符合最先进的最先进的方法的结果,同时提供了对任意数量的点和线的求解的灵活性。

url指向纸张:tba

许可证:apache 2.0

安装

安装软件包的最简单方法是通过pip

pip install cvxpnpl

或者,您可以克隆此repo并从其根文件夹调用

python setup.py install

SDP解算器,BLAS和LAPACK

cvxpnpl使用cvxpy作为不透明凸解算器。然而,cvxpy只是一个抽象层,它调用SCS来获得底层sdp问题的解决方案。scs需要blas和lapack,这对于windows用户来说是很痛苦的。有鉴于此,我建议您通过他们的anaconda通道安装cvxpy,因为它将抽象掉所有的依赖设置。

示例

库公开3个公共函数:pnppnlpnpl。您可以找到几个示例来说明如何在examples folder中使用它们。

基准

为了验证cvxpnpl在不同场景下的健壮性,并将其与其他方法进行比较,我们进行了大量的基准测试。请检查主题的专用README页。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓如何在java字符串中获取RATE的值   java ANT在哪里输出编译器错误?   在java中,while循环在何处启动对象   javacom。谷歌。格森。内部的LinkedTreeMap无法强制转换到我的类   java单选按钮。isSelected()方法未返回正确的响应   嵌入式系统中applet中的java相对码基字段   如何在eclipse中将Java应用程序附加到jvm探查器?   java为什么Android应用程序崩溃?   在java中拖放上传后保持文件夹结构   爪哇多领导人选举问题   java Springs RestTemplate如何处理postForEntity()中的错误响应   Java如何用前导零递增整数字符串?   java Android将文本作为图像共享给其他应用程序   Java搜索替换   java isDirectory()不适用于UNIX目录   java我们可以得到显示测试类是否通过或失败的TestNG报告吗   Java类对象排序和分组   简单Java幂递归   java在处理MethodArgumentNotValidException时如何访问请求对象?