跳转到主要内容

MAGSAC和MAGSAC++

项目描述

重要新闻

我很高兴宣布,MAGSAC++已被包含在OpenCV中。您可以在这里检查文档。Dmytro Mishkin提供了OpenCV MAGSAC++与其他鲁棒估计器的比较链接

OpenCV USAC Benchmark

MAGSAC和MAGSAC++算法,无需使用单个内点-外点阈值进行鲁棒模型拟合

提出MAGSAC和MAGSAC++算法,用于无需单个内点-外点阈值进行鲁棒模型估计。

MAGSAC论文可在链接找到。

MAGSAC++可在链接找到。

这两个方法在RANSAC的最新发展演示中进行了说明,该演示来自CVPR教程RANSAC 2020

在相应的演示中展示了关于单应性、基本矩阵、本质矩阵和6D姿态估计的实验。

在OpenCV 3.46和4.3上进行了测试。要使用示例运行可执行文件,请复制“data”文件夹到可执行文件旁边或在main()函数中设置路径。

如果您使用了此算法,请引用

@inproceedings{barath2019magsac,
	author = {Barath, Daniel and Matas, Jiri and Noskova, Jana},
	title = {{MAGSAC}: marginalizing sample consensus},
	booktitle = {Conference on Computer Vision and Pattern Recognition},
	year = {2019},
}

@inproceedings{barath2019magsacplusplus,
	author = {Barath, Daniel and Noskova, Jana and Ivashechkin, Maksym and Matas, Jiri},
	title = {{MAGSAC}++, a fast, reliable and accurate robust estimator},
	booktitle = {Conference on Computer Vision and Pattern Recognition},
	year = {2020},
}

使用pip从PyPI安装

为Python 3.8 - 3.11提供了Windows和Linux的预编译轮子,您可以使用以下命令安装

pip install magsac

感谢@akaszynski的贡献。

C++安装

要构建和安装仅限C++的MAGSAC/MAGSAC++,请克隆或下载此存储库,然后使用CMAKE构建项目。

$ git clone https://github.com/danini/magsac --recursive
$ cd build
$ cmake ..
$ make

安装Python包并编译C++

python3 ./setup.py install

pip3 install -e .

示例项目

要构建展示基本矩阵、单应性矩阵和本质矩阵拟合的示例项目,在CMAKE创建项目时设置变量CREATE_SAMPLE_PROJECT = ON

在可执行文件旁边,复制data文件夹,并创建一个results文件夹。

Jupyter Notebook示例

单应性矩阵拟合的示例位于:notebook

基本矩阵拟合的示例位于:notebook

本质矩阵拟合的示例位于:notebook

比较不同采样器在基本矩阵估计中性能的示例位于:notebook

要求

  • Eigen 3.0或更高版本
  • CMake 2.8.12或更高版本
  • OpenCV 3.0或更高版本
  • 支持C++17的现代编译器
  • GFlags

MAGSAC++的性能

MAGSAC++根据"2020年RANSAC" CVPR教程的实验是业界领先。

MAGSAC的性能

MAGSAC根据最近的研究Yin等人"Image Matching across Wide Baselines: From Paper to Practice", 2020是业界领先。

IMW-benchmark

IMW-Challenge

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

pymagsac-0.2.1.tar.gz (3.2 MB 查看哈希值)

上传时间:

构建分布

pymagsac-0.2.1-cp312-cp312-win_amd64.whl (3.5 MB 查看哈希值)

上传时间: CPython 3.12 Windows x86-64

pymagsac-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.5 MB 查看哈希值)

上传时间: CPython 3.12 manylinux: glibc 2.17+ x86-64

pymagsac-0.2.1-cp311-cp311-win_amd64.whl (3.5 MB 查看哈希值)

上传时间: CPython 3.11 Windows x86-64

pymagsac-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.5 MB 查看哈希值)

上传时间: CPython 3.11 manylinux: glibc 2.17+ x86-64

pymagsac-0.2.1-cp310-cp310-win_amd64.whl (3.5 MB 查看哈希)

上传时间 CPython 3.10 Windows x86-64

pymagsac-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.5 MB 查看哈希)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64

pymagsac-0.2.1-cp39-cp39-win_amd64.whl (3.5 MB 查看哈希)

上传时间 CPython 3.9 Windows x86-64

pymagsac-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.5 MB 查看哈希)

上传时间 CPython 3.9 manylinux: glibc 2.17+ x86-64

pymagsac-0.2.1-cp38-cp38-win_amd64.whl (3.5 MB 查看哈希)

上传时间 CPython 3.8 Windows x86-64

pymagsac-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.5 MB 查看哈希)

上传时间 CPython 3.8 manylinux: glibc 2.17+ x86-64

由以下支持