十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
本文小編為大家詳細(xì)介紹“OneFlow怎么快速上手”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“OneFlow怎么快速上手”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
主要從事網(wǎng)頁設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、成都響應(yīng)式網(wǎng)站建設(shè)、程序開發(fā)、微網(wǎng)站、小程序開發(fā)等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷經(jīng)驗(yàn),集策劃、開發(fā)、設(shè)計(jì)、營銷、管理等多方位專業(yè)化運(yùn)作于一體,具備承接不同規(guī)模與類型的建設(shè)項(xiàng)目的能力。
使用以下命令安裝 OneFlow 最新穩(wěn)定版本:
python3
系統(tǒng)要求:
Python >= 3.5
Nvidia Linux x86_64 driver version >= 440.33
如果提示 找不到 對(duì)應(yīng)版本,請嘗試升級(jí) pip
:
python3 -m pip install --upgrade --user pip
安裝 OneFlow with legacy CUDA
支持其它較早版本 CUDA 的 OneFlow 的安裝方法如下:
python3 -m pip install --find-links https://oneflow-inc.github.io/nightly oneflow_cu101 --user python3 -m pip install --find-links https://oneflow-inc.github.io/nightly oneflow_cu100 --user python3 -m pip install --find-links https://oneflow-inc.github.io/nightly oneflow_cu92 --user python3 -m pip install --find-links https://oneflow-inc.github.io/nightly oneflow_cu91 --user python3 -m pip install --find-links https://oneflow-inc.github.io/nightly oneflow_cu90 --user
從源碼編譯安裝 OneFlow
開始前,請確保您已正確安裝了oneflow,并且在python3環(huán)境下可以成功import oneflow。
git clone此倉庫到本地
git
2.安裝python依賴庫
pip install -r requirements.txt
3.在項(xiàng)目root目錄下,執(zhí)行:
./scripts/build.sh
執(zhí)行此腳本,將cpp代碼中自定義的op算子編譯成可調(diào)用執(zhí)行的.so文件,您將在項(xiàng)目路徑下看到:
libdarknet.so
liboneflow_yolov3.so
我們使用了yolov3原作者提供的預(yù)訓(xùn)練模型—yolov3.weight ,經(jīng)轉(zhuǎn)換后生成了OneFlow格式的模型。下載預(yù)訓(xùn)練模型:of_model_yolov3.zip ,并將解壓后的of_model文件夾放置在項(xiàng)目root目錄下,即可使用。
運(yùn)行:
sh yolo_predict.sh
或者:
sh yolo_predict_python_data_preprocess.sh
運(yùn)行腳本后,將在data/result下生成檢測后帶bbox標(biāo)記框的圖片
參數(shù)說明 - --pretrained_model 預(yù)訓(xùn)練模型路徑
--label_path coco類別標(biāo)簽路徑(coco.name)
--input_dir 待檢測圖片文件夾路徑
--output_dir 檢測結(jié)構(gòu)輸出路徑
--image_paths 單個(gè)/多個(gè)待檢測圖片路徑,如:
--image_paths 'data/images/000002.jpg' 'data/images/000004.jpg'
訓(xùn)練同樣很簡單,準(zhǔn)備好數(shù)據(jù)集后,只需要執(zhí)行:sh yolo_train.sh
即可,數(shù)據(jù)集制作過程見下文【數(shù)據(jù)集制作】部分。
YoloV3支持任意目標(biāo)檢測數(shù)據(jù)集,下面我們以COCO2014制作過程為例,介紹訓(xùn)練/驗(yàn)證所需的數(shù)據(jù)集制作,其它數(shù)據(jù)集如PASCAL VOC或自定義數(shù)據(jù)集等,都可以采用相同格式。
下載COCO2014訓(xùn)練集和驗(yàn)證集圖片,將解壓后的train2014和val2014放在data/COCO/images目錄下
(如果本地已下載過COCO2014數(shù)據(jù)集,可以ln軟鏈接images至本地train2014和val2014的父目錄)
準(zhǔn)備資源文件:labels,5k.part,trainvalno5k.part
wget -c https://pjreddie.com/media/files/coco/5k.part wget -c https://pjreddie.com/media/files/coco/trainvalno5k.part wget -c https://pjreddie.com/media/files/coco/labels.tgz
腳本
在data/COCO目錄下執(zhí)行腳本:
# get label file tar xzf labels.tgz # set up image list paste <(awk "{print \"$PWD\"}" <5k.part) 5k.part | tr -d '\t' > 5k.txt paste <(awk "{print \"$PWD\"}"trainvalno5k.txt # copy label txt to image dir find labels/train2014/ -name "*.txt" | xargs -i cp {} images/train2014/ find labels/val2014/ -name "*.txt" | xargs -i cp {} images/val2014/
執(zhí)行腳本將自動(dòng)解壓縮labels.tgz文件,并在當(dāng)前目錄下生成5k.txt和trainvalno5k.txt,然后將labels/train2014和labels/val2014的的所有l(wèi)abel txt文件復(fù)制到對(duì)應(yīng)的訓(xùn)練集和驗(yàn)證集文件夾中( 保證圖片和label在同一目錄 )。
至此,完成整個(gè)數(shù)據(jù)集的準(zhǔn)備過程。
修改yolo_train.sh腳本中的參數(shù),令:--image_path_file="data/COCO/trainvalno5k.txt"并執(zhí)行:
sh yolo_train.sh
即可開始訓(xùn)練過程,更詳細(xì)的參數(shù)介紹如下:
--gpu_num_per_node 每臺(tái)機(jī)器使用的gpu數(shù)量
--batch_size batch 批大小
--base_lr 初始學(xué)習(xí)率
--classes 目標(biāo)類別數(shù)量(COCO 80;VOC 20)
--model_save_dir 模型存放文件夾路徑
--dataset_dir 訓(xùn)練/驗(yàn)證集文件夾路徑
--num_epoch 迭代總輪數(shù)
--save_frequency 指定模型保存的epoch間隔
讀到這里,這篇“OneFlow怎么快速上手”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。