本文小編為大家詳細介紹“OneFlow怎么快速上手”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當,希望這篇“OneFlow怎么快速上手”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
主要從事網(wǎng)頁設計、PC網(wǎng)站建設(電腦版網(wǎng)站建設)、wap網(wǎng)站建設(手機版網(wǎng)站建設)、成都響應式網(wǎng)站建設、程序開發(fā)、微網(wǎng)站、小程序開發(fā)等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設行業(yè)積累了豐富的成都網(wǎng)站設計、網(wǎng)站建設、網(wǎng)絡營銷經(jīng)驗,集策劃、開發(fā)、設計、營銷、管理等多方位專業(yè)化運作于一體,具備承接不同規(guī)模與類型的建設項目的能力。
使用以下命令安裝 OneFlow 最新穩(wěn)定版本:
python3
系統(tǒng)要求:
Python >= 3.5
Nvidia Linux x86_64 driver version >= 440.33
如果提示 找不到 對應版本,請嘗試升級 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.在項目root目錄下,執(zhí)行:
./scripts/build.sh
執(zhí)行此腳本,將cpp代碼中自定義的op算子編譯成可調(diào)用執(zhí)行的.so文件,您將在項目路徑下看到:
libdarknet.so
liboneflow_yolov3.so
我們使用了yolov3原作者提供的預訓練模型—yolov3.weight ,經(jīng)轉(zhuǎn)換后生成了OneFlow格式的模型。下載預訓練模型:of_model_yolov3.zip ,并將解壓后的of_model文件夾放置在項目root目錄下,即可使用。
運行:
sh yolo_predict.sh
或者:
sh yolo_predict_python_data_preprocess.sh
運行腳本后,將在data/result下生成檢測后帶bbox標記框的圖片
參數(shù)說明 - --pretrained_model 預訓練模型路徑
--label_path coco類別標簽路徑(coco.name)
--input_dir 待檢測圖片文件夾路徑
--output_dir 檢測結(jié)構(gòu)輸出路徑
--image_paths 單個/多個待檢測圖片路徑,如:
--image_paths 'data/images/000002.jpg' 'data/images/000004.jpg'
訓練同樣很簡單,準備好數(shù)據(jù)集后,只需要執(zhí)行:sh yolo_train.sh
即可,數(shù)據(jù)集制作過程見下文【數(shù)據(jù)集制作】部分。
YoloV3支持任意目標檢測數(shù)據(jù)集,下面我們以COCO2014制作過程為例,介紹訓練/驗證所需的數(shù)據(jù)集制作,其它數(shù)據(jù)集如PASCAL VOC或自定義數(shù)據(jù)集等,都可以采用相同格式。
下載COCO2014訓練集和驗證集圖片,將解壓后的train2014和val2014放在data/COCO/images目錄下
(如果本地已下載過COCO2014數(shù)據(jù)集,可以ln軟鏈接images至本地train2014和val2014的父目錄)
準備資源文件: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í)行腳本將自動解壓縮labels.tgz文件,并在當前目錄下生成5k.txt和trainvalno5k.txt,然后將labels/train2014和labels/val2014的的所有l(wèi)abel txt文件復制到對應的訓練集和驗證集文件夾中( 保證圖片和label在同一目錄 )。
至此,完成整個數(shù)據(jù)集的準備過程。
修改yolo_train.sh腳本中的參數(shù),令:--image_path_file="data/COCO/trainvalno5k.txt"并執(zhí)行:
sh yolo_train.sh
即可開始訓練過程,更詳細的參數(shù)介紹如下:
--gpu_num_per_node 每臺機器使用的gpu數(shù)量
--batch_size batch 批大小
--base_lr 初始學習率
--classes 目標類別數(shù)量(COCO 80;VOC 20)
--model_save_dir 模型存放文件夾路徑
--dataset_dir 訓練/驗證集文件夾路徑
--num_epoch 迭代總輪數(shù)
--save_frequency 指定模型保存的epoch間隔
讀到這里,這篇“OneFlow怎么快速上手”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。