【嵌入式AI】ubuntu 安装 ncnn

  一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第4天,点击查看活动详情

欢迎关注我的公众号 [极智视界],获取我的更多笔记分享

  大家好,我是极智视界。本教程详细记录了在 ubuntu 上安装端侧推理框架 ncnn 的方法。

1、安装依赖

sudo apt install build-essential git cmake libprotobuf-dev protobuf-compiler libvulkan-dev vulkan-utils
复制代码

   也需依赖opencv,这个源码编吧,可以看教程《【经验分享】ubuntu源码编译opencv》。

2、编译

cd ncnn 
mkdir build 
cd build 

cmkae -DCMAKE_BUILD_TYPE=Release ..
make -j32
复制代码

3、测试

cd ../examples 

../build/examples/squeezenet ../images/256-ncnn.png
复制代码

   正常输出说明已经安装成功。

   测试一下性能。

cd ../benchmark 

## 第四个参数是 GPU deive index 
## 若要使用 CPU,设置第五个参数为 -1  
../build/benchmark/benchncnn 10 32 0 0  
复制代码

  到目前都很顺利,如果你以为这样就结束了,那就错了哈哈。

   接着。。

4、打开 Vulkun

   先说一下什么是 Vulkun,Vulkan 是一个跨平台的 2D 和 3D 绘图应用程序 API,其作者科纳斯组织([Khronos Group](baike.baidu.com/item/Khrono… Group/87000))最先把 VulkanAPI 称为 “下一代OpenGL行动” / “glNext”。

  安装 Vulkun。

wget https://sdk.lunarg.com/sdk/download/1.2.182.0/linux/vulkansdk-linux-x86_64-1.2.182.0.tar.gz 

tar -xvf vulkansdk-linux-x86_64-1.2.182.0.tar.gz 

vim ~/.bashrc 
## 加入 
export VULKAN_SDK=/path/to/1.2.182.0/x86_64 

## 使生效 
source ~/.bashrc
复制代码

  重新编译:

扫描二维码关注公众号,回复: 13768331 查看本文章
cd ncnn/build 

rm -rf ./* 

cmake -DCMAKE_BUILD_TYPE=Release -DNCNN_VULKAN=ON -DNCNN_SYSTEM_GLSLANG=ON -DNCNN_BUILD_EXAMPLES=ON ..
复制代码

  这个时候你可能会出现如下报错:

  不要慌,去 CMakeLists.txt 的 244 行看看:

  很明显吧,找不到 ncnn/glslang/CMakeLists.txt,回头看看 ncnn/glslang 是空的:

  好办,如下操作:

cd ncnn 

git clone https://github.com/KhronosGroup/glslang.git 

## 如果你 github 网速慢的话,可以用这个 
git clone https://gitee.com/jeremyjj/glslang.git
复制代码

   这样你的 ncnn/glslang 就有东西了:

   来,让我们重新编。

cd ncnn/build 
rm -rf ./* 

cmake -DCMAKE_BUILD_TYPE=Release -DNCNN_VULKAN=ON -DNCNN_SYSTEM_GLSLANG=ON -DNCNN_BUILD_EXAMPLES=ON .. 
make -j32
复制代码

   不出意外的话就 OK 了(开32个线程编译贼快)。

  你同样可以跑下示例验证一下:

cd ../examples 

../build/examples/squeezenet ../images/256-ncnn.png
复制代码

  好了,收工~ 以上分享了 ubuntu 安装 ncnn 的方法,希望我的分享能对你的学习有一点帮助。


 【公众号传送】

《【嵌入式AI】ubuntu 安装 ncnn》


logo_show.gif

猜你喜欢

转载自juejin.im/post/7082550399772655652