【Tensorflow】Visual studio新建一个标准的tensorflow C++工程

版权声明:本文为博主原创文章,未经作者允许请勿转载。 https://blog.csdn.net/heiheiya https://blog.csdn.net/heiheiya/article/details/89352829

一、编译tensorflow.dll和tensorflow.lib

请参考链接:

【Tensorflow】Windows以cmake+visual studio方式编译cpu版tensorflow.dll和tensorflow.lib

【Tensorflow】Windows以cmake+visual studio方式编译gpu版tensorflow.dll和tensorflow.lib

二、新建一个visual studio工程

打开visual studio 2015,新建一个空工程,这里命名为tf_test。

新建一个test.cpp源文件。

三、配置工程属性

将工程的编译平台设置成Release x64。

选中工程右键属性。

将编译好的tensorflow的bin目录添加到环境变量Path,或者在配置属性-》调试-》环境里单独设置PATH,但是这样每个工程都需要配置一次,而加入环境变量则一劳永逸。

配置属性-》C/C++-》常规-》附加包含目录,添加tensorflow的include目录。我的是

D:\software\tensorflow1_8\include

配置属性-》C/C++-》预处理器-》预处理器定义,添加

PLATFORM_WINDOWS

配置属性-》链接器-》常规-》附加库目录,添加tensorflow的lib目录。我的是

D:\software\tensorflow1_8\lib

配置属性-》链接器-》输入-》附加依赖项,添加

tensorflow.lib

点击确定按钮,关闭配置属性窗口。

四、编写源码

#define COMPILER_MSVC
#define NOMINMAX

#include "tensorflow\cc\client\client_session.h"
#include "tensorflow\cc\ops\standard_ops.h"
#include "tensorflow\core\framework\tensor.h"

using namespace tensorflow;
using namespace tensorflow::ops;

int main()
{
	Scope root = Scope::NewRootScope();
	auto A = Const(root, { {3.f, 2.f}, {-1.f, 0.f} });
	auto b = Const(root, { {3.f, 5.f} });
	auto v = MatMul(root.WithOpName("v"), A, b, MatMul::TransposeB(true));
	std::vector<Tensor> outputs;
	ClientSession session(root);
	TF_CHECK_OK(session.Run({ v }, &outputs));
	Tensor Y_ = outputs[0];
	std::cout << Y_.tensor<float, 2>() << std::endl;

	return 0;
}

编译,运行

猜你喜欢

转载自blog.csdn.net/heiheiya/article/details/89352829