一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Jetson Orin Nano納米刷機(jī)介紹

OpenCV學(xué)堂 ? 來(lái)源:OpenCV學(xué)院 ? 作者:憂(yōu)郁的魚(yú) ? 2023-04-01 09:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Jetson Orin Nano 介紹

NVIDIA Jetson Orin Nano 系列模組以最小的 Jetson 外形提供高達(dá) 40 TOPS 的 AI 算力,功耗在 7W 至 15W 之間,算力相當(dāng)于是 NVIDIA Jetson Nano 的 80 倍。Jetson Orin Nano 提供 8GB 和 4GB兩個(gè)版本,其中開(kāi)發(fā)套件是8GB版本。

可以廣泛應(yīng)用于智能機(jī)器人開(kāi)發(fā)、智能無(wú)人機(jī)開(kāi)發(fā)、智能相機(jī)開(kāi)發(fā)。從Jetson Orin Nano 到最高性能的 Jetson AGX Orin,有六個(gè)基于相同架構(gòu)的不同模塊,是端側(cè)與邊緣智能的理想開(kāi)發(fā)載板。

顯示器接口是DP的,必須買(mǎi)個(gè)DP轉(zhuǎn)HDMI轉(zhuǎn)接頭才可以接到HDMI支持的顯示器,最重要的這款支持WIFI了。以前的Jetson Nano是USB供電就可以了,這個(gè)是配有專(zhuān)門(mén)的電源線(xiàn),19V電源輸入,沒(méi)辦法算力強(qiáng)悍肯定得多耗電,相對(duì)來(lái)說(shuō)還是低功耗。

JetPack5.1鏡像制作

安裝JetPack5.1之前先準(zhǔn)備好一個(gè)microSD卡,最少是64G,推薦買(mǎi)128G的,因?yàn)镴etpack5.1安裝程序燒錄完成已經(jīng)是20G,再安裝一些其它第三方庫(kù)比如pytorch、torchvision、pyqt5或者QT什么的,就沒(méi)有多少應(yīng)用程序開(kāi)發(fā)與部署可用空間了。準(zhǔn)備好microSD卡之后,就先下載鏡像文件

必須NVIDIA的賬號(hào)登錄之后才可以下載。JetPack5.1已經(jīng)預(yù)安裝好了

- CUDA11.4.19
- cuDNN8.6.0
- TensorRT8.5.2
- OpenCV4.5.4
還有其他的一些支持工具軟件。下載好Jetpack5.1鏡像包之后,先下載SD卡格式化軟件,格式化SD卡。截圖如下:

0785c386-cfe7-11ed-bfe3-dac502259ad0.png

然后下載鏡像制作軟件

安裝好之后選擇鏡像文件與SD卡,然后開(kāi)始制作,顯示如下:

07a3b558-cfe7-11ed-bfe3-dac502259ad0.png

07df39ca-cfe7-11ed-bfe3-dac502259ad0.png

燒錄完成以后插到Jetson Orin Nano開(kāi)發(fā)板的風(fēng)扇下方的卡槽中

安裝pytorch與torchvision

安裝好了Jetpack5.1之后,我才發(fā)現(xiàn)英偉達(dá)官方還沒(méi)有正式發(fā)布適配的pytorch版本跟torchvision版本,

意思是用pytorch1.14版本,以此類(lèi)推torchvision選擇0.15.1版本。然后從這里直接下載1.14適配jetpack的版本文件,

下載好之后,別著急安裝pytroch,先通過(guò)下面的命令行安裝好依賴(lài):

sudo apt-get -y install autoconf bc build-essential g++-8 gcc-8 clang-8 lld-8 gettext-base gfortran-8 iputils-ping libbz2-dev libc++-dev libcgal-dev libffi-dev libfreetype6-dev libhdf5-dev libjpeg-dev liblzma-dev libncurses5-dev libncursesw5-dev libpng-dev libreadline-dev libssl-dev libsqlite3-dev libxml2-dev libxslt-dev locales moreutils openssl python-openssl rsync scons python3-pip libopenblas-dev;
國(guó)內(nèi)安裝經(jīng)常會(huì)有網(wǎng)絡(luò)無(wú)法連接發(fā)生各種錯(cuò)誤,沒(méi)事多執(zhí)行幾次命令行肯定可以安裝成功的(我的個(gè)人經(jīng)驗(yàn))。 安裝好pytorch相關(guān)依賴(lài)之后,安裝pytorch就很簡(jiǎn)單:
pip3 install torch-1.14.0a0+44dac51c.nv23.02-cp38-cp38-linux_aarch64.whl
安裝好pytorch之后,使用下面的命令行從源碼安裝torchvision 0.15.1版本,先安裝依賴(lài),然后下載安裝包,最后從源碼編譯安裝,大概十分鐘左右就好,相關(guān)命令行如下:
sudo apt install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
pip3 install --upgrade pillow
wget https://github.com/pytorch/vision/archive/refs/tags/v0.15.1.zip
unzip v0.15.1.zip
cd vision-0.15.1
export BUILD_VERSION=0.15.1
python3 setup.py install --user
同樣不行就執(zhí)行幾次,肯定會(huì)成功安裝的,我安裝與運(yùn)行的截圖如下:

082588e4-cfe7-11ed-bfe3-dac502259ad0.png

都安裝好了用pip3 list查一下,然后我發(fā)現(xiàn)pip list顯示沒(méi)有TensorRT,但是我查一下已經(jīng)有了,只是缺少python包支持,我記得jetpack4.x刷機(jī)之后就自動(dòng)有了,這個(gè)怎么沒(méi)有了,我暈!不過(guò)沒(méi)關(guān)系,執(zhí)行下面的命令行安裝python TensorRT支持,執(zhí)行完之后肯定有了!

084cbdb0-cfe7-11ed-bfe3-dac502259ad0.png

最終驗(yàn)證測(cè)試如下:

08704b54-cfe7-11ed-bfe3-dac502259ad0.png

說(shuō)明一切準(zhǔn)備工作就緒了。

說(shuō)明一下,安裝過(guò)程中要求輸入提示的都輸入 y

ONNX2ENGINE

我發(fā)現(xiàn)我在TensorRT8.4上面轉(zhuǎn)換的engine文件無(wú)法在TensorRT8.5上面成功加載,所以我直接把YOLOv8n的ONNX格式模型文件直接拷貝到Jetson Orin Nano上,然后通過(guò)命令行重新生成engine文件:

cd /usr/src/tensorrt/bin
./trtexec --onnx= --saveEngine=
相關(guān)截圖如下:

088a4234-cfe7-11ed-bfe3-dac502259ad0.png

089e8334-cfe7-11ed-bfe3-dac502259ad0.png

08ad26dc-cfe7-11ed-bfe3-dac502259ad0.png

這個(gè)時(shí)間大概在五分鐘左右,需要等一下才可以轉(zhuǎn)換好。

YOLOv8對(duì)象檢測(cè)演示

在此之前,我已經(jīng)寫(xiě)好了YOLOv8 + TensorRT的測(cè)試程序,所以我直接把程序拷貝過(guò)來(lái),然后用新生成的yolov8n.engine開(kāi)啟YOLOv8對(duì)象檢測(cè)推理,測(cè)試視頻運(yùn)行如下:

08c11016-cfe7-11ed-bfe3-dac502259ad0.png

09065f36-cfe7-11ed-bfe3-dac502259ad0.png

這里程序中FPS計(jì)算包含了前后處理,因?yàn)閮蓚€(gè)視頻的分辨率不同,導(dǎo)致前后處理的耗時(shí)不同,對(duì)象我之前在Jetson Nano上的推理速度,我只能說(shuō)太厲害了,因?yàn)槲抑癙ython版本tensorRT的推理這個(gè)程序在Jetson Nano一跑過(guò)一會(huì)就要卡死的感覺(jué),特別慢!相關(guān)的測(cè)試源碼如下:

  1importtensorrtastrt
  2fromtorchvisionimporttransforms
  3importtorchast
  4fromcollectionsimportOrderedDict,namedtuple
  5importcv2ascv
  6importtime
  7importnumpyasnp
  8
  9img_transform=transforms.Compose([transforms.ToTensor(),
 10transforms.Resize((640,640))
 11])
 12
 13defload_classes():
 14withopen("classes.txt","r")asf:
 15class_list=[cname.strip()forcnameinf.readlines()]
 16returnclass_list
 17
 18
 19defformat_yolov8(frame):
 20row,col,_=frame.shape
 21_max=max(col,row)
 22result=np.zeros((_max,_max,3),np.uint8)
 23result[0:row,0:col]=frame
 24result=cv.cvtColor(result,cv.COLOR_BGR2RGB)
 25returnresult
 26
 27defwrap_detection(input_image,output_data):
 28class_ids=[]
 29confidences=[]
 30boxes=[]
 31out_data=output_data.T
 32rows=out_data.shape[0]
 33
 34image_width,image_height,_=input_image.shape
 35
 36x_factor=image_width/640.0
 37y_factor=image_height/640.0
 38
 39forrinrange(rows):
 40row=out_data[r]
 41classes_scores=row[4:]
 42class_id=np.argmax(classes_scores)
 43if(classes_scores[class_id]>.25):
 44class_ids.append(class_id)
 45confidences.append(classes_scores[class_id])
 46x,y,w,h=row[0].item(),row[1].item(),row[2].item(),row[3].item()
 47left=int((x-0.5*w)*x_factor)
 48top=int((y-0.5*h)*y_factor)
 49width=int(w*x_factor)
 50height=int(h*y_factor)
 51box=np.array([left,top,width,height])
 52boxes.append(box)
 53
 54indexes=cv.dnn.NMSBoxes(boxes,confidences,0.25,0.25)
 55
 56result_class_ids=[]
 57result_confidences=[]
 58result_boxes=[]
 59
 60foriinindexes:
 61result_confidences.append(confidences[i])
 62result_class_ids.append(class_ids[i])
 63result_boxes.append(boxes[i])
 64
 65returnresult_class_ids,result_confidences,result_boxes
 66defgpu_trt_demo():
 67class_list=load_classes()
 68device=t.device('cuda:0')
 69Binding=namedtuple('Binding',('name','dtype','shape','data','ptr'))
 70logger=trt.Logger(trt.Logger.INFO)
 71withopen("yolov8n.engine",'rb')asf,trt.Runtime(logger)asruntime:
 72model=runtime.deserialize_cuda_engine(f.read())
 73bindings=OrderedDict()
 74forindexinrange(model.num_bindings):
 75name=model.get_binding_name(index)
 76dtype=trt.nptype(model.get_binding_dtype(index))
 77shape=model.get_binding_shape(index)
 78data=t.from_numpy(np.empty(shape,dtype=np.dtype(dtype))).to(device)
 79bindings[name]=Binding(name,dtype,shape,data,int(data.data_ptr()))
 80binding_addrs=OrderedDict((n,d.ptr)forn,dinbindings.items())
 81context=model.create_execution_context()
 82
 83capture=cv.VideoCapture("test.mp4")
 84colors=[(255,255,0),(0,255,0),(0,255,255),(255,0,0)]
 85whileTrue:
 86_,frame=capture.read()
 87ifframeisNone:
 88print("Endofstream")
 89break
 90fh,fw,fc=frame.shape
 91start=time.time()
 92image=format_yolov8(frame)
 93x_input=img_transform(image).view(1,3,640,640).to(device)
 94binding_addrs['images']=int(x_input.data_ptr())
 95context.execute_v2(list(binding_addrs.values()))
 96out_prob=bindings['output0'].data.cpu().numpy()
 97end=time.time()
 98
 99class_ids,confidences,boxes=wrap_detection(image,np.squeeze(out_prob,0))
100for(classid,confidence,box)inzip(class_ids,confidences,boxes):
101ifbox[2]>fw*0.67:
102continue
103color=colors[int(classid)%len(colors)]
104cv.rectangle(frame,box,color,2)
105cv.rectangle(frame,(box[0],box[1]-20),(box[0]+box[2],box[1]),color,-1)
106cv.putText(frame,class_list[classid]+""+("%.2f"%confidence),(box[0],box[1]-10),cv.FONT_HERSHEY_SIMPLEX,.5,(0,0,0))
107
108inf_end=end-start
109fps=1/inf_end
110fps_label="FPS:%.2f"%fps
111cv.putText(frame,fps_label,(10,25),cv.FONT_HERSHEY_SIMPLEX,1,(0,0,255),2)
112cv.imshow("YOLOv8+TensorRT8.5.xObjectDetection",frame)
113cc=cv.waitKey(1)
114ifcc==27:
115break
116cv.waitKey(0)
117cv.destroyAllWindows()
118
119
120if__name__=="__main__":
121gpu_trt_demo()

總結(jié):

Jetson Orin Nano從系統(tǒng)燒錄到安裝好pytorch、torchvision、部署運(yùn)行YOLOv8推理演示程序基本沒(méi)有什么坑,唯一需要注意的是numpy別用1.24的最新版本。Jetson Orin Nano算力相比Jetson Nano感覺(jué)是一個(gè)天上一個(gè)地下。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 顯示器
    +關(guān)注

    關(guān)注

    22

    文章

    5072

    瀏覽量

    141840
  • HDMI
    +關(guān)注

    關(guān)注

    33

    文章

    1830

    瀏覽量

    155429
  • 智能機(jī)器人
    +關(guān)注

    關(guān)注

    17

    文章

    901

    瀏覽量

    84524
  • USB供電
    +關(guān)注

    關(guān)注

    0

    文章

    29

    瀏覽量

    15081

原文標(biāo)題:Jetson Orin Nano刷機(jī)與YOLOv8部署演示

文章出處:【微信號(hào):CVSCHOOL,微信公眾號(hào):OpenCV學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    英偉達(dá)推出Jetson Orin Nano模組最高40TOPS性能,為機(jī)器人和邊緣AI提供強(qiáng)動(dòng)力

    基于Orin的生產(chǎn)模組,可以支持各種邊緣AI和機(jī)器人應(yīng)用。 ? 據(jù)NVIDIA嵌入式與邊緣計(jì)算副總裁Deepu Talla介紹,全新的Jetson Orin
    的頭像 發(fā)表于 09-21 09:44 ?8760次閱讀

    可適配N(xiāo)VIDIA Jetson Orin NX和Orin Nano的工業(yè)級(jí)準(zhǔn)系統(tǒng),研華EPC-R7300助力產(chǎn)品開(kāi)發(fā)

    2023 年, 工業(yè)嵌入式AI解決方案供應(yīng)商研華科技發(fā)布工業(yè)準(zhǔn)系統(tǒng) EPC-R7300,該產(chǎn)品適用于NVIDIA?Jetson Orin?NX及JetsonOrin?Nano模塊。利用強(qiáng)大
    發(fā)表于 04-26 16:47 ?1324次閱讀
    可適配N(xiāo)VIDIA <b class='flag-5'>Jetson</b> <b class='flag-5'>Orin</b> NX和<b class='flag-5'>Orin</b> <b class='flag-5'>Nano</b>的工業(yè)級(jí)準(zhǔn)系統(tǒng),研華EPC-R7300助力產(chǎn)品開(kāi)發(fā)

    【EASY EAI Orin Nano開(kāi)發(fā)板試用體驗(yàn)】安裝nfs服務(wù)器

    執(zhí)行如下命令掛載nfssudo mount -t nfs 192.168.3.85:/home/developer/nfsroot /home/orin-nano/Desktop/nfs -o
    發(fā)表于 06-22 17:32

    Jetson Nano B01 從零入門(mén)筆記系列(一)基本組裝與啟動(dòng)問(wèn)題 精選資料推薦

    Jetson Nano B01 從零入門(mén)筆記系列(一)基本組裝與啟動(dòng)問(wèn)題1、基本組件構(gòu)成與補(bǔ)充2、組裝過(guò)程3、TF卡機(jī)及啟動(dòng)教程要點(diǎn)原專(zhuān)業(yè)離板子類(lèi)型的東西差的比較遠(yuǎn),參加個(gè)四軸避障比
    發(fā)表于 07-20 08:07

    Jetson Nano簡(jiǎn)介

    目錄1.Jetson Nano簡(jiǎn)介2. Jetson Nano環(huán)境配置2.1 開(kāi)箱配件介紹2.2 燒錄系統(tǒng)2.3 開(kāi)機(jī)和基本設(shè)置2.4 開(kāi)發(fā)
    發(fā)表于 07-26 07:44

    Jetson Nano具有哪些優(yōu)勢(shì)?Jetson Nano怎么安裝?

    Jetson Nano具有哪些優(yōu)勢(shì)?Jetson Nano怎么安裝?
    發(fā)表于 09-28 06:29

    Jetson Nano是什么?有何作用

    Jetson Nano是一款小型,功能強(qiáng)大的計(jì)算機(jī),適用于嵌入式應(yīng)用程序和AI IoT這幾天開(kāi)始第一次使用Jetson Nano,也踩了一些坑,下面給大家分享一下,少走彎路如果您沒(méi)有用
    發(fā)表于 01-12 06:43

    NVIDIA推出全新Jetson Orin Nano系統(tǒng)級(jí)模組

    NVIDIA 推出全新Jetson Orin Nano 系統(tǒng)級(jí)模組,擴(kuò)充了NVIDIA Jetson產(chǎn)品陣容。全新Jetson
    的頭像 發(fā)表于 09-22 09:54 ?1925次閱讀

    研揚(yáng)同步在GTC中宣布NVIDIA Jetson Orin Nano 邊緣計(jì)算AI平臺(tái)BOXER-8621AI上市

    采用NVIDIA Jetson Orin Nano系統(tǒng)模塊的BOXER-8621AI (臺(tái)北,中國(guó)臺(tái)灣,2022年9月22日)專(zhuān)業(yè)物聯(lián)網(wǎng)及人工智能邊緣運(yùn)算平臺(tái)研發(fā)制造大廠(chǎng)—研揚(yáng)科技,今日
    的頭像 發(fā)表于 09-27 11:34 ?1929次閱讀
    研揚(yáng)同步在GTC中宣布NVIDIA <b class='flag-5'>Jetson</b> <b class='flag-5'>Orin</b> <b class='flag-5'>Nano</b> 邊緣計(jì)算AI平臺(tái)BOXER-8621AI上市

    Jetson AGX Orin開(kāi)發(fā)者套件轉(zhuǎn)化為任何Jetson Orin模塊

    隨著 Jetson Orin Nano 在本次 GTC 大會(huì)的發(fā)布,整個(gè) Jetson Orin 模塊陣容現(xiàn)已揭曉。憑借高達(dá) 40 TOPS
    的頭像 發(fā)表于 09-30 11:03 ?2681次閱讀

    使用NVIDIA Jetson Orin Nano解決入門(mén)級(jí)邊緣人工智能挑戰(zhàn)

    2022 年 GTC , NVIDIA 宣布 Jetson Orin Nano 系列系統(tǒng)模塊( SoM )。它們的 AI 性能是 NVIDIA Jetson
    的頭像 發(fā)表于 10-11 14:47 ?3185次閱讀
    使用NVIDIA <b class='flag-5'>Jetson</b> <b class='flag-5'>Orin</b> <b class='flag-5'>Nano</b>解決入門(mén)級(jí)邊緣人工智能挑戰(zhàn)

    NVIDIA Jetson Orin Nano的性能基準(zhǔn)

    在本次 GTC 大會(huì)上,NVIDIA 發(fā)布了Jetson Orin Nano系列的系統(tǒng)級(jí)模組(SoM)。其 AI 性能是 NVIDIA Jetson
    的頭像 發(fā)表于 10-12 09:55 ?3795次閱讀

    GTC23 | 使用 NVIDIA Jetson Orin Nano 開(kāi)發(fā)套件開(kāi)發(fā) AI 機(jī)器人及智能視覺(jué)系統(tǒng)

    NVIDIA Jetson Orin Nano Developer Kit? 為創(chuàng)建入門(mén)級(jí) AI 機(jī)器人、智能無(wú)人機(jī)和智能視覺(jué)系統(tǒng)設(shè)定了一個(gè)新標(biāo)準(zhǔn),同時(shí)簡(jiǎn)化了? NVIDIA Jetson
    的頭像 發(fā)表于 03-29 03:40 ?2044次閱讀

    NVIDIA發(fā)布小巧高性?xún)r(jià)比的Jetson Orin Nano Super開(kāi)發(fā)者套件

    NVIDIA近期推出了一款全新的生成式AI超級(jí)計(jì)算機(jī)——Jetson Orin Nano Super開(kāi)發(fā)者套件。這款開(kāi)發(fā)者套件以其小巧的尺寸和高性?xún)r(jià)比吸引了廣泛關(guān)注。 Jetson
    的頭像 發(fā)表于 12-19 11:28 ?1091次閱讀

    研華NVIDIA Jetson Orin Nano系統(tǒng)支持Super Mode

    提升生成式AI性能1.7倍 2025年春季— 研華科技,作為全球工業(yè)嵌入式 AI 解決方案供應(yīng)商,宣布推出搭載NVIDIA Jetson Orin Nano 8GB系統(tǒng)模塊的AI邊緣運(yùn)算系統(tǒng)
    發(fā)表于 03-10 14:07 ?385次閱讀
    研華NVIDIA <b class='flag-5'>Jetson</b> <b class='flag-5'>Orin</b> <b class='flag-5'>Nano</b>系統(tǒng)支持Super Mode