Ubuntu_Anaconda_opencv4.5.3_opencv_contrib4.5.3_libtorch1.8.1安装配置之二-安装配置libtorch

本文主要是介绍Ubuntu_Anaconda_opencv4.5.3_opencv_contrib4.5.3_libtorch1.8.1安装配置之二-安装配置libtorch,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Ubuntu16.04 配置 LibTorch_c++编译libtorch工程

文章目录

  • 一. 下载LibTorch
  • 二、libtorch工程编译执行示例
    • 1.编写CMake构建配置
    • 2.编写 example-app.cpp 程序
    • 3.CMake编译
  • 参考链接:


一. 下载LibTorch

下载参考链接:
获取libtorch有两种方式:
a. 从官网下载编译好的文件:
最新编译的:https://pytorch.org/
以前编译的版本:https://blog.csdn.net/weixin_43742643/article/details/114156298
参考编译libtorch示例工程方式:
https://pytorch.org/cppdocs/installing.html
b. 自己源码编译

官方编译好的版本有两种版本,Pre-cxx11 ABI 和 cxx11 ABI两种,我选择的是:libtorch 1.8.1 (LTS) cxx11 ABI
链接:https://download.pytorch.org/libtorch/cu111/libtorch-cxx11-abi-shared-with-deps-1.8.1%2Bcu111.zip

下载libtorch后解压,解压后的文件夹包含以下文件:
其中在这里插入图片描述
lib/文件夹:包含必须链接的共享库;
include/文件夹:包含程序需要包含的头文件;
share/文件夹:包含必要的 CMake 配置,以启用上面的简单find_package(Torch)命令。

二、libtorch工程编译执行示例

1.编写CMake构建配置

CMakeLists.txt文件如下:
可以参考官网:https://pytorch.org/cppdocs/installing.html

cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
project(example-app)find_package(Torch REQUIRED)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TORCH_CXX_FLAGS}")add_executable(example-app example-app.cpp)
target_link_libraries(example-app "${TORCH_LIBRARIES}")
set_property(TARGET example-app PROPERTY CXX_STANDARD 14)# The following code block is suggested to be used on Windows.
# According to https://github.com/pytorch/pytorch/issues/25457,
# the DLLs need to be copied to avoid memory errors.
if (MSVC)file(GLOB TORCH_DLLS "${TORCH_INSTALL_PREFIX}/lib/*.dll")add_custom_command(TARGET example-appPOST_BUILDCOMMAND ${CMAKE_COMMAND} -E copy_if_different${TORCH_DLLS}$<TARGET_FILE_DIR:example-app>)
endif (MSVC)

2.编写 example-app.cpp 程序

实现将简单地创建一个新的torch :: Tensor并将其打印出来,代码如下:

#include <torch/torch.h>
#include <iostream>int main() {torch::Tensor tensor = torch::rand({2, 3});std::cout << tensor << std::endl;
}

3.CMake编译

完成CMakeLists.txt文件和示例.cpp文件后,使用cmake编译。在项目文件夹下新建build文件夹,项目文件夹包含以下文件。
在这里插入图片描述打开终端,进入build文件夹下,执行编译命令:

#cmake -DCMAKE_PREFIX_PATH=/absolute/path/to/libtorch ..
$ cmake -DCMAKE_PREFIX_PATH=/XXXX/libtorch ..

完成后,执行命令:
make
生成可执行文件example-app,build文件夹生成的文件如下:
在这里插入图片描述执行可执行文件:
./example-app
生成结果如下:
在这里插入图片描述好的,完整步骤就完成了。

请注意以下问题:
在CMakeLists.txt文件中,选择合适的cmake最低版本:

cmake_minimum_required(VERSION 3.0 FATAL_ERROR)

如果改成

cmake_minimum_required(VERSION 2.6 FATAL_ERROR)

在执行编译命令:

#cmake -DCMAKE_PREFIX_PATH=/absolute/path/to/libtorch ..
$ cmake -DCMAKE_PREFIX_PATH=/XXXX/libtorch ..

有一些CMake Warning ,但可以编译成功。
当执行命令:
make
时,出现”fatal error: torch/torch.h:没有那个文件或目录“的错误提示:
在这里插入图片描述
在这里插入图片描述因此注意选择合适的cmake最低版本

可以参考以下链接,讲解的比较详细。

参考链接:

https://blog.csdn.net/john_bh/article/details/108221748
https://oldpan.me/archives/pytorch-c-libtorch-inference
https://blog.csdn.net/github_30605157/article/details/79839177

这篇关于Ubuntu_Anaconda_opencv4.5.3_opencv_contrib4.5.3_libtorch1.8.1安装配置之二-安装配置libtorch的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/471036

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

使用opencv优化图片(画面变清晰)

文章目录 需求影响照片清晰度的因素 实现降噪测试代码 锐化空间锐化Unsharp Masking频率域锐化对比测试 对比度增强常用算法对比测试 需求 对图像进行优化,使其看起来更清晰,同时保持尺寸不变,通常涉及到图像处理技术如锐化、降噪、对比度增强等 影响照片清晰度的因素 影响照片清晰度的因素有很多,主要可以从以下几个方面来分析 1. 拍摄设备 相机传感器:相机传

wolfSSL参数设置或配置项解释

1. wolfCrypt Only 解释:wolfCrypt是一个开源的、轻量级的、可移植的加密库,支持多种加密算法和协议。选择“wolfCrypt Only”意味着系统或应用将仅使用wolfCrypt库进行加密操作,而不依赖其他加密库。 2. DTLS Support 解释:DTLS(Datagram Transport Layer Security)是一种基于UDP的安全协议,提供类似于

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装