ubuntu16.04虚拟机上跑通ncnn模型

ubuntu16.04虚拟机上跑通ncnn模型

** 本文只讲解如何在Ubuntu上跑通ncnn模型的流程,具体实现细节,需要大家再去详细查找相关资料。**

1、安装编译OpenCV库

跑ncnn模型离不开OpenCV库,因此需提前安装并编译好OpenCV及相关库。

2、安装及编译ncnn库

2.1 准备文件

安装编译完ncnn库后,如何跑通自己的ncnn模型呢,本文主要介绍。
首先,将需要的文件准备在一个文件夹中,如图所示:
ubuntu16.04虚拟机上跑通ncnn模型_第1张图片
准备模型文件.bin和.param文件,源文件:demo.cpp yolo-fastestv2.cpp,头文件:yolo-fastestv2.h,jpg为测试图像,build文件夹为存放编译后的执行文件。

2.2 CMakeLists.txt文件

由于本文模型使用到OpenCV和ncnn库,因此必须将库与程序编译在一起,话不多说,贴出CMakeLists.txt文件,大家可模仿这写,都是大同小异。

# CMakelist模板
cmake_minimum_required(VERSION 3.0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

find_package(OpenCV REQUIRED core highgui imgproc)
# 需要包含的库和链接
include_directories(/home/tarena/ncnn-master/build/install/include/ncnn)
link_directories(/home/tarena/ncnn-master/build/install/lib)

FIND_PACKAGE( OpenMP REQUIRED)  
if(OPENMP_FOUND)  
    message("OPENMP FOUND")  
    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")  
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")  
    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")  
endif()  

add_executable(main demo.cpp yolo-fastestv2.cpp)
target_link_libraries(main ncnn ${OpenCV_LIBS})

编译指令:

cd build
cmake ..
make

此时在build文件夹中可以得到main执行文件,

./main

即可得到程序结果。

你可能感兴趣的:(ncnn,Ubuntu,ncnn,ubuntu)