Jetson nano 安装 openpose实现肢体识别,姿态预估

Jetson nano 安装 openpose步骤(全程需连接自带源,请准备工具,内存卡要大于16G,MobaXterm)

一、准备

1、下载原版系统镜像https://developer.nvidia.com/embedded/downloads
2、烧写镜像balenaEtcher到内存卡
3、这个步骤其实很纠结,源修改问题,国内连接速度慢,404,我是先备份原版系统源,修改为清华源,为了安装全局访问连接工具,具体如何安装访问工具请通过搜索引擎搜索

4.先备份原本的source.list文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak  

5.修改source

进入source.list

sudo vim /etc/apt/sources.list

复制内容到sources.list

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe

“Esc”结束输入,“:wq!”保存退出

6.更新软件列表,保存到本地

sudo apt-get update

7-8为安装全局访问工具,具体通过搜索引擎搜索

9.切换回自带的源

mv /etc/apt/sources.list.bak sources.list

10.更新软件列表,保存在本地

sudo apt-get update

11.更新软件

sudo apt-get upgrade

过程漫长

二、检查自带软件是否正常工作

1. 检查CUDA

Jetson-nano原版镜像安装了CUDA10.0版本,如果运行

nvcc -V

不成功,需要你把CUDA的路径写入环境变量

sudo vim  ~/.bashrc

在.bashrc文件最后添加

export CUDA_HOME=/usr/local/cuda-10.0
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-10.0/bin:$PATH

保存退出

重载文件

source ~/.bashrc

source后,此时再执行nvcc -V执行结果如下

zmm@Jetson:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2018 NVIDIA Corporation
Built on Sun_Sep_30_21:09:22_CDT_2018
Cuda compilation tools, release 10.0, V10.0.166
zmm@Jetson:~$
2.检查OpenCV

Jetson-nano原版镜像安装OpenCV版本,可以使用命令检查OpenCV是否安装就绪

pkg-config opencv4 --modversion

如果OpenCV安装就绪,会显示版本号,我的版本是4.1.1

3.检查cuDNN

Jetson-nano原版镜像安装cuDNN,并有例子可供运行,我们运行一下例子,也正好验证上面的CUDA

cd /usr/src/cudnn_samples_v7/mnistCUDNN   #进入例子目录
sudo make     #编译例子
sudo chmod a+x mnistCUDNN # 为可执行文件添加执行权限
./mnistCUDNN # 执行

成功会显示Test passed!

zmm@Jetson:/usr/src/cudnn_samples_v7/mnistCUDNN$ ./mnistCUDNN
/************************************/
Test passed!

三、准备文件

1.前往下面连接下载源代码,需要下载的有openpose,caffe,pybind11,将下载的caffe、pybind11复制到openpose/3rdparty/目录下,目录下存在的这两个名称的空文件夹,更改名称为文件夹下删除之前的名称;
https://github.com/CMU-Perceptual-Computing-Labmputing-Lab
2.前往下面链接下载protobuf2.6;
https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
tar -zxvf protobuf-2.6.1.tar.gz

sudo apt-get install build-essential #安装依赖

cd protobuf-2.6.1/

./configure #配置安装文件

make #编译

make check #检测编译安装环境

sudo make install #安装

检查环境变量是否有protoc

protoc --version

若出现以下报错

protoc: error while loading shared libraries: libprotocbuf.so.9: cannot open shared

创建 bprotobuf.conf文件

sudo chmod 777 -R /etc/ld.so.conf.d
sudo vim /etc/ld.so.conf.d/bprotobuf.conf
#添加的内容
/usr/local/lib

创建好bprotobuf.conf文件后,在 /etc/ld.so.conf.d/目录下输入命令:

sudo ldconfig

检查环境变量是否有protoc

protoc --version
libprotoc 2.6.1
3.cmake-gui安装

jetson nano的原版系统镜像是Ubuntu 18,所以需要cmake>=3.12

#卸载低版本cmake
sudo apt purge cmake-qt-gui
#安装依赖
sudo apt-get install qtbase5-dev

到Cmake官网https://cmake.org/download/下载源代码,解压缩后进入文件夹执行命令

./configure --qt-gui
./bootstrap && make -j4 && sudo make install -j4

-j*为编译线程,视条件确定

执行cmake-gui 会有cmake的桌面版弹窗出现。

四、编译源码

sudo cmake-gui #打开桌面版cmake
mkdir openpose/build #创建build文件夹

where is the source code :选择openpose源码文件夹

where to build the binaries:选择工程文件文件夹

点击下方Configure,等待配置,下载相关文件,直到Configure Done。会出现一些选项,使用openpose自带caffe需与图片相同。

点击下方Generate,直到Generate Done

Jetson nano 安装 openpose实现肢体识别,姿态预估_第1张图片
编译,等待,没报error,编译成功。

cd openpose/build
sudo make -j4

-j*为编译线程,视条件确定

五、运行

1.使用USB摄像头
#所在目录为openpose
./build/examples/openpose/openpose.bin -camera_resolution 320x160 -net_resolution 64x32

数字部分为16的倍数。

2.使用本地视频
#所在目录为openpose
./build/examples/openpose/openpose.bin --video examples/media/video.avi --net_resolution 64x32

数字部分为16的倍数。

3.使用图片
#所在目录为openpose
./build/examples/openpose/openpose.bin --image_dir examples/media/ --net_resolution 64x32

数字部分为16的倍数。

你可能感兴趣的:(Jetson,nano,深度学习,tensorflow,神经网络,机器学习)