Visual Studio使用Armadillo线性代数运算库

在Visual Studio中可以添加Armadillo线性代数库,进行一些矩阵运算,本文在Visual Studio 2015中添加Armadillo进行一系列测试,其中有几个调试要点

请到我的博客查看更详细的教程

下载Armadillo

到Armadillo官网下载该库,放在自定义的目录,比如F:\ISE\Machine Learning

下载支持库

到这里下载几个库文件,放在自定义目录比如F:\ISE\Machine Learning\armadillo-7.400.4,如下:

blas.lib
blasd.lib
lapack.lib
lapackd.lib
libf2c.lib
libf2cd.lib

Visual Studio连接

可参考本博客文章Win7+OpenCV 2.4.13+Visual Studio 2015一劳永逸的配置

  1. 在Visual Studio中新建控制台工程,在属性管理器中的Debug|Win32选项下右键添加新的项目属性表,取名Armadillo_Debug
  2. 修改 包含目录,添加Armadillo的include目录所在路径,比如F:\ISE\Machine Learning\armadillo-7.400.4\include
  3. 修改库目录,添加下载的支持库所在的目录,比如F:\ISE\Machine Learning\armadillo-7.400.4
  4. 修改连接器->输入->附加依赖项,添加

    blasd.lib
    lapackd.lib
    libf2cd.lib
    
  5. 同理,在Release|Win32选项下右键添加新的项目属性表,取名Armadillo_Release,同上添加包含目录库目录,在附加依赖项中添加如下:

    blas.lib
    lapack.lib
    libf2c.lib
    

打开Armadillo的C++11支持

该设置由本人摸索出来,用于解决Armadillo对矩阵直接赋值初始化报错的问题

打开\include\armadillo_bits目录中的config.hpp

找到#define ARMA_USE_CXX11取消注释即可

测试

在源文件中输入以下代码测试:

// HousePrizeModel.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include 

using namespace arma;

const mat b1 = { {1, 3, 5},
          {2, 4, 6} };

const mat b2 = { {3,4,5},
           {4,5,6} };

int main()
{

    b1.print("b1:");
    b2.print("b2:");

    mat c = b1%b2;
    c.print("b1 .* b2 = ");

    system("pause");

    return 0;
}

Visual Studio使用Armadillo线性代数运算库_第1张图片

你可能感兴趣的:(机器学习)