一 Libtorch的安装
访问Pytorch官网,连接如下PyTorch,我的电脑有英伟达显卡,选择CUDA版本。
下载后,在Download文件下会有一个zip压缩包。
unzip libtorch.zip
输入该命令即可解压。将解压后的文件移动至Home目录下即可。
二 OpenCV4的安装和编译
参考我的另外一片博客Ubuntu24.04+cmake+opencv源码编译配置_ubuntu opencv cmake-CSDN博客
三 CmakeLists.txt文件编写
文件格式如下图
test文件下的CMakeLists.txt文件编写
#cmake_minimum_required(VERSION 3.1)
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)PROJECT (demo)
ADD_SUBDIRECTORY(src)
src文件下的CMakeLists.txt文件编写
#执行文件存入bin文件夹
SET (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)#src文件夹所有源文件,创建SRC_IST变量
AUX_SOURCE_DIRECTORY (. SRC_LIST)#opencv
SET(OpenCV_DIR /home/nano/OpenCV4/lib/cmake/opencv4)
FIND_PACKAGE (OpenCV REQUIRED)
INCLUDE_DIRECTORIES({OpenCV_INCLUDE_DIRS})
#libtorch
SET(Torch_DIR /home/nano/libtorch/share/cmake/Torch)
FIND_PACKAGE(Torch REQUIRED)
INCLUDE_DIRECTORIES({TORCH_INCLUDE_DIRS})#头文件
INCLUDE_DIRECTORIES(../include)#生成可执行文件
ADD_EXECUTABLE(demo ${SRC_LIST})#链接opencv lib库
TARGET_LINK_LIBRARIES(demo ${OpenCV_LIBS})TARGET_LINK_LIBRARIES(demo ${TORCH_LIBRARIES})
接下来,在src中的main.cpp中写一个示例代码,如下
#include <iostream>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/core.hpp>
#include <opencv2/dnn.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <torch/torch.h>
int main()
{
torch::Tensor tensor = torch::rand({2, 3});
std::cout << tensor << std::endl;
std::cout << "This is a cvdemo" << std::endl;
#std::string path ="/home/nano/Pictures/2.jpg";
#cv::Mat src;
#src = cv::imread(path);
#cv::imshow("rec",src);
#cv::waitKey(0);
return 0;
}
进入到build文件下,开始编译,输入以下命令
cd build
cmake ..
make
如图,编译通过,切换到bin目录下,运行生成的二进制文件,输入以下命令
cd ../bin
./demo
终端显示出以下结果代表配置成功