libmr,元识别库

libmr的Python项目详细描述


概要

libmr提供核心元识别和weibull拟合功能。 它用于计算用于多模态融合的w分数,重新规范化支持向量机数据,通常支持带有离群点检测的开放集算法

动机

确定什么时候是异常值是一件棘手的事情。 幸运的是,极值理论为最大或最小已知值的建模提供了强有力的基础,然后确定其他值是太大还是太小。这个库支持这样的计算。 在几乎任何高级软件包(R、Matlab等)中都可以很容易地完成这项工作,但要保持一切正常是很难的。 这里的C++类跟踪翻译和翻转,以便更容易正确地使用元识别概念。

许可证

此版本的libmr是根据bsd 3条款许可证发布的。(请参阅license.txt)和superseed previous license。我们放弃了专利保护。

如果有助于您的研究,请在您的出版物中引用libmr:

@article{Scheirer_2011_TPAMI,
  author = {Walter J. Scheirer and Anderson Rocha and Ross Michaels and Terrance E. Boult},
  title = {Meta-Recognition: The Theory and Practice of Recognition Score Analysis},
  journal = {IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI)},
  volume = {33},
  issue = {8},
  pages = {1689--1695},
  year = {2011}
}

或者是我们后来的作品,如果和它们结合的话。

这个版本使用的对象保留了计算实际w分数所需的“转换”(包括保存/加载)。 它包括预测、cdf、逆、fitfhigh(越大越好)、fitlow(越小越好)和fitsvm等功能。

安装

项目布局

  • libmr库源代码和资源
  • python使用cython为libmr提供的python包装器
  • 带有示例程序的示例目录,这些程序还可以测试正确性
  • doc+c++文档;目录从HTML/NETX.HTML开始

C++文库< EH3>

这需要cmake(2.8版)

Windows的快速生成说明:

use CMake GUI
Source code = <where libmr is> libMR/libMR
Where to build binaries = < where libmr is > /libMR/build
Click generate
Select correct visual studio version compiler
Click yes to add directory build
Open Visual Studio Solution
Build ALL_BUILD project to build libmr
Build INSTALL project to install
Add install dir to path to link against libmr dll.

Linux/Mac的快速构建说明:

$ tar -zxf libMR.tgz
$ cd libMR
$ mkdir build;  % or whereyou like to build it
$ cd build
$ cmake ..
or to get a different installation directory
$ cmake -DCMAKE_INSTALL_PREFIX=<YOUR_INSTALLATON_PATH> ..
$ make

运行示例-安装libmr后运行:

$ examples/mr-test
$ examples/wlb-test

(可选)您可以“安装”它(默认情况下,在系统路径中,您必须使用sudo):

$ make install

examples/mr test中有内置测试,以确保它正确编译并计算正确的值

Python

python到libmr的绑定由cython>;=0.17提供。建造时 这样,libmr就静态地链接到python库中 意味着您不必构建整个包。

有几种方法可以安装libmr for python。

  1. (首选)使用PIP安装:

    此方法将libmr构建为一个python扩展,并将安装 它进入你的python路径。如果你在虚拟机里,这个 允许您以标准用户身份安装libmr,而无需 sudo:

    $ virtualenv venv && source venv/bin/activate
    $ pip install -r python/requirements.txt
    $ pip install .
    

    更新:现在可以在pypi上使用libmr。要安装最新版本, 您只需:

    $ pip install libmr
    
  2. 创建共享对象

    如果你已经安装了cython和numpy但是你不想 要将libmr安装到python的路径中,只需构建 直接模块:

    $ python setup.py build_ext -i
    

    这会将“libmr.so”放入当前文件夹。您可以导入 直接发送:

    $ file libmr.so
    libmr.so: ELF 64-bit LSB  shared object, ...
    $ python
    >>> import libmr
    >>> mr = libmr.MR()
    

    现在,将libmr.so移动到项目的文件夹中,或者将此路径添加到PYTHONPATH环境变量中。

贡献者

由Terrance博士(特里)Boult、Walter Scheir博士开发,Vijay Iyer@Securics提供了一些实现,Ethan Rudd和Manuel Gunther博士对Python进行了增强

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

推荐PyPI第三方库


热门话题
用户界面java,使用gui连接到另一台计算机/服务器的文件系统   运行sbt的ubuntu返回错误:“javahome需要<path>参数”   java如何在Android中处理许多ImageView而不出现内存问题?   查询中非法字符的java相同URL失败   安卓取消引用可能会产生“java”。lang.NullPointerException'   java中的indexoutofboundsexception“java.lang.ArrayIndexOutOfBoundsException”错误   xml Java将dom保存到文件>文件在程序结束后由另一个进程打开   Java的垃圾收集器是如何工作的?   Java如何筛选值(列表)   java处理字符串我怎样才能像在真实的书籍中一样在上面部分生成“小数字”呢?   java SonarQube是否有一个API来获取所有项目分析的一部分?   java startActivity(intent)什么都不做   JAVAutil。扫描器类Java   java如何从Firebase更新电子邮件?UpdateMail方法已被弃用   java Hibernate。如何正确组织带有注释的onetomany关系?   在java中获得卷标和驱动器号之间的映射(而不是FileSystemView)的解决方法是什么   java查找文件的路径