Nvidia Jetson TX1的刷机以及jetson inference的运行
在通過大半個月的不斷嘗試和網(wǎng)上攻略的查找,終于在TX1上完成了jetson-inference的運行。期間碰到了一些問題,這里一并給出相應的解決方式,但是每個人碰到的問題原因有很多,這里的方法僅供參考,如有誤之處希望大佬多多指正,共同提高。
第一步,對TX1刷機
刷機前需要連接完成的部件
兩根網(wǎng)線(分別將電腦和TX1連接在同一個有網(wǎng)絡的路由器);
Micro-USB連接線(連接電腦和TX1);
筆記本(win10,帶ubuntu18.04的虛擬機);
HDMI高清線(連接顯示屏和TX1);
有HDMI接口的顯示屏;
鼠標、鍵盤;
路由器;
USB拓展塢(TX1只有一個USB接口,需要拓展,連接鍵鼠等設備);
SSD固態(tài)硬盤。
安裝Nvidia Sdkmanager與刷機操作
打開Ubuntu后,
首先需要安裝Nvidia Sdkmanager(官網(wǎng):https://developer.nvidia.com/drive/sdk-manager),并且在Nvidia官網(wǎng)注冊賬號以供后續(xù)使用。
安裝指令:
sudo apt install ./sdkmanager_[version]-[build#]_amd64.deb以上部件全部連接完畢之后,
輸入以下指令檢查電腦Ubuntu是否與TX1連接成功。
lsusb輸入指令后出現(xiàn)Nvidia Crop,即表示連接成功
打開Sdk manager,輸入注冊的賬號密碼,登陸操作都完成后進入以下界面。
這里需要將TX1置為Recovery模式:按下電源鍵開啟TX1,過一會按住REC鍵不動,再按一下RST鍵停一兩秒再松開,再等一兩秒松開REC鍵,此時Sdkmanager就會檢測到相應的型號。
這里我下載的JetPack版本是4.6.3,你也可以選擇其他版本;需要注意的是Target Hardware部分需要顯示出當前連接的設備則表示連接成功;DeepStream一般不勾選,太大。(需要給主機ubuntu留足空間,最好30G以上)
空間不夠可以參考這個鏈接:https://blog.csdn.net/fanjufei123456/article/details/123517885
選擇確定后,點擊CONTINUE來到STEP2
第二步就是下載環(huán)節(jié),建議全部下載后再安裝,即將下面兩個選項都勾選。下載完成之后,先返回STEP1后再次進入STEP2,這時只需勾選左邊的選項,即可開始安裝。
安裝期間出現(xiàn)類似下面的提示,不用管,點擊yes繼續(xù)(不點擊不清楚還會不會安裝),安裝過程中最好自己一直守著電腦看著,有時會卡在某個節(jié)點不動一段時間,不用急,耐心等。(個別情況時間等待過長需要重新刷)
這里將進入一段時間的等待過程,直到跳到下面的刷機界面才算是成功一半。
選擇手動安裝(Manual Setup),用戶名我看很多博主寫的ubuntu就跟個風,密碼也是ubuntu,完成之后點擊flash。這邊可能還需要重復進行一次上述的Recovery操作。
再次經過長時間的等待,進入以下界面,之前我直接install失敗了,后來查了一下說是這里需要將連接TX1的網(wǎng)線拔了再插上去,然后就可以install了。
再再經過更加漫長的等待,如果你最終看到下圖,恭喜你終于安裝成功了。
檢測JetPack安裝是否成功的辦法
在以上完成之后,TX1連接的顯示屏這時已經可以顯示桌面了,這時打開終端輸入以下指令:
jetson_release -v此時終端即可顯示相關信息
第二步,讓TX1從硬盤啟動
上述安裝完成之后,TX1內存就剩幾百兆了,這里提供加載固態(tài)硬盤的方法。
(參考文章:https://blog.csdn.net/qq_38898517/article/details/109116191)
首先將SSD硬盤插到TX1上,點擊ubuntu主界面左上角如下圖位置,輸入disk,點擊Disks圖標
選擇你插入的SSD硬盤,點擊如下圖的設置按鈕,選擇格式化操作。
卷名自己定義,類型選擇Ext4,然后開始格式化
完成格式化后點擊啟動器的硬盤圖標,硬盤自動掛載,此時按住Ctrl+L,即可顯示硬盤路徑,將其路徑復制復制。
在終端輸入
sudo cp -ax / '你的硬盤路徑' //修改啟動路徑 cd /boot/extlinux sudo cp extlinux.conf extlinux.conf.original sudo gedit /boot/extlinux/extlinux.conf初始文件如下圖所示
修改后:
這里的"/dev/sda1"在下圖device位置查看。
ubuntu18.04只需修改上述三個部分,與參考文章有所不同。
文件內容改完之后,保存重啟TX1即可。
輸入以下指令即可查看是否更改成功。
df -hl第三步,Jetson inference運行
(參考文章:https://github.com/dusty-nv/jetson-inference)
大體部分按照上面的順序一步步的來,這里做一些補充。
pytorch的安裝
whl文件下載地址:https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048
參考網(wǎng)址:https://blog.csdn.net/qq_41660112/article/details/123715549
根據(jù)你所安裝的Jetpack版本以及python版本選擇對應的pytorch版本進行下載,我下載的是1.10.0版本。
python3.6輸入下列指令即可安裝:
sudo apt-get install python3-pip libopenblas-base libopenmpi-dev pip3 install Cython pip3 install numpy torch-1.10.0-cp36-cp36m-linux_aarch64.whlpython2.7輸入下列指令即可安裝:
sudo apt-get install libopenblas-base libopenmpi-dev pip install future torch-1.4.0-cp27-cp27mu-linux_aarch64.whl檢測是否安裝成功
python3 //進入python3 import torch //載入pytorch print(torch.__version__) //查看pytorch版本torchvision的安裝
版本對應關系:https://catalog.ngc.nvidia.com/orgs/nvidia/containers/l4t-pytorch
安裝指令:
$ sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev $ git clone --branch version https://github.com/pytorch/vision torchvision # 更改第一個vision為你pytorch對應的版本,如v0.11.0 $ cd torchvision $ export BUILD_VERSION=0.x.0 # where 0.x.0 is the torchvision version $ sudo python setup.py install # use python3 if installing for Python 3.6 $ cd ../ # attempting to load torchvision from build dir will result in import error $ pip install 'pillow<7' # always needed for Python 2.7, not needed torchvision v0.5.0+ with Python 3.6Docker容器
由于我是在Docker容器中運行的Jetson inference,下面將講解如何通過Docker實現(xiàn)jetson-inference的運行。
找到對應版本的docker
拉取鏡像:
docker pull dustynv/jetson-inference:r32.6.1運行容器:
cd jetson-inference docker/run.sh//退出:exit將自己編寫的程序文件路徑掛載到docker
docker/run.sh --volume /my/host/path:/my/container/path下面運行一個圖像識別程序看看,在下載的jetson-inference文件夾中jetson-inference/build/aarch64/bin位置輸入以下指令
Python ./imagenet.py images/strawberry_0.jpg images/test/output_1.jpg最終結果:
sudo:command not found解決方法:
可參考:https://blog.csdn.net/hello_1995/article/details/109222650
目前寫這么多,后續(xù)再補充。。
總結
以上是生活随笔為你收集整理的Nvidia Jetson TX1的刷机以及jetson inference的运行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【环境部署】centos7(Linux)
- 下一篇: 报告称:你的智能家居设备每周可能遭受10