Jetson_nano環境配置


准備工作:寫入系統鏡像

准備microSD卡(32G以上),

官網下載系統鏡像(Ubuntu 18.04LTS);
https://developer.nvidia.com/embedded/dlc/jetson-nano-dev-kit-sd-card-image

(2)下載鏡像制作工具Etcher;

(3)傻瓜式操作,選擇插入的microSD卡,然后點擊“Flash!”,直到制作完成。

 

Note:SD卡燒錄好后插入板中,需要連接鍵盤鼠標、hdmi接口顯示器,網線;通電后系統自動啟動,進行系統的初始配置,出現卡頓的話斷電重啟即可

可以使用USB或者DC電源供電

USB充電器需要2A以上;
使用DC電源時需要將J48兩個觸點短接
相關內容可以到官網下載

https://developer.nvidia.com/embedded/downloads

 

1.修改環境變量

Jetson Nano利用官方鏡像進行安裝后,系統已經安裝好了JetPack,cuda,cudaa,OpenCV等組件,需要修改下環境變量才可以使用。

利用gedit打開 ~ 路徑下.bashrc文件:

sudo gedit ~./bashrc

文件的最后添加以下三行:

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

export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.0

重新執行.bashrc文件,直接生效;

source ~./bashrc

輸入nvcc -V命令進行測試,如果顯示如下信息,證明修改正確。

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

 

2.更改國內鏡像源

在路徑/etc/apt/下有source.list文件,

(1)對該文件進行復制備份;

sudo cp sources.list sources.list.bak

(2)使用vim或者gedit等工具對source.list文件進行編輯;

 

直接清空source.list文件內容,根據個人喜好選擇下述中科大或者清華的arm64源,粘進文件,保存。(Note:ARM源和一般源不同,需要將地址中的ubuntu改為ubuntu-ports)

 

中科大

deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-backports main multiverse restricted universe

deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-proposed main multiverse restricted universe

deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-security main multiverse restricted universe

deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-updates main multiverse restricted universe

deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe

deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-backports main multiverse restricted universe

deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-proposed main multiverse restricted universe

deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-security main multiverse restricted universe

deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-updates main multiverse restricted universe

 

清華

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial-security main multiverse restricted universe

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial-updates main multiverse restricted universe

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial-backports main multiverse restricted universe

deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe

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

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

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

 

(3)更新

sudo apt-get update

'''如有需要,執行下述命令對文件進行升級'''

sudo apt-get upgrade

至此,完成系統更改源的操作,接下來就是配置整個系統的過程了。

 

3. 安裝pip

因為Jetson Nano中已經安裝了Python3.6版本,安裝pip時會提示缺少setuptools工具,建議下載setuptools和pip的安裝包直接安裝

sudo apt-get install python3-pip python3-dev

安裝后pip是9.01版本,需要把它升級到最新版,升級后pip版本為19.0.3。

python3 -m pip install --upgrade pip  #升級pip

這里面升級后會有一個小Bug,需要手動改一下(未驗證,先保留)

sudo vim /usr/bin/pip3   #打開pip3文件

將原來的

from pip import main

if __name__ == '__main__':

    sys.exit(main())

改成

from pip import __main__

if __name__ == '__main__':

    sys.exit(__main__._main())

修改結束后保存。運行pip3 -V成功后顯示

 

pip3 -V

pip 19.0.3 from /home/beckhans/.local/lib/python3.6/site-packages/pip (python 3.6)

 

 

4. 安裝那些機器學習包

sudo apt-get install python3-scipy

sudo apt-get install python3-pandas

sudo apt-get install python3-sklearn

 這里面沒有numpy和matplotlib,安裝其它包時,這兩個也會被自動安裝。

 

出現numpy錯誤

>>> import tensorflow as tf

RuntimeError: module compiled against API version 0xc but this version of numpy is 0xb

ImportError: numpy.core.multiarray failed to import

ImportError: numpy.core.umath failed to import

ImportError: numpy.core.umath failed to import

2019-05-02 10:29:02.103748: F tensorflow/python/lib/core/bfloat16.cc:675] Check failed: PyBfloat16_Type.tp_base != nullptr

Aborted (core dumped)

 

解決方法如下,numpy版本不匹配;(python3.6.8版本對應numpy1.16.1)

pip3 install -U numpy==1.16.1--user

 

5. 安裝TensorFlow GPU版

 (1)確認CUDA已經被正常安裝

nvcc -V

如果能看到CUDA版本號,即為正確安裝

(2)安裝所需要的包

sudo apt-get install python3-pip libhdf5-serial-dev hdf5-tools

(3)安裝TensorFlow GPU版本 

pip3 install --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu==1.13.1+nv19.3 --user

百度網盤鏈接:https://pan.baidu.com/s/17Iq4XXfSR4CDDiQS6NAlOA  提取碼:2fy3 (更改源后下載速度飛快,不用單獨下載)

 

 

6. 安裝Keras

既然有了TensorFlow,那就把Keras也安裝上

sudo pip3 install keras

安裝完成后,進入python3,檢查一下安裝成果,import keras時,下方提示using TensorFlow backend,就證明Keras安裝成功並使用TensorFlow作為backend。

 

7. SSH遠程連接nano

目前網上看到的資料都是將nano作為單獨的電腦,進行遠程連接來使用,在Ubuntu Host電腦上安裝NVIDIA SDK Manager可以用來進行刷系統、安裝相關軟件的操作,下載地址:

https://developer.nvidia.com/embedded/jetpack

連接前提:

Nano必須先通過MicroSD卡成功啟動進入Ubuntu界面
采用Micro USB鏈接Nano到Ubuntu Host
Nano連接網線到外網,且與Ubuntu Host機器在同一局域網內
 

另外可通過SSH遠程連接(如何與SOON平台連接還需補充)

jetson nano已經默認開啟了openssh-server服務。可以通過xshell直接連

 

8. jetson inference介紹

NVIDIA提供了套教程,教程里包含了開發指南、TensorRT示例代碼,甚至包括ImageNet和DetectNet示例在內的預先訓練的網絡模型,這個可以自行探索

https://github.com/dusty-nv/jetson-inference
 

使用TensorRT和Jetson相關的深度學習庫;
https://developer.nvidia.com/embedded/twodaystoademo
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM