注意:此項目不再維護,並且可能與最新的Pytorch不兼容(0.4.0之後)。
這是Yolov2的Pytorch實施。該項目主要基於DarkFlow和Darknet。
我使用了Cython擴展程序進行後處理和multiprocessing.Pool圖像預處理。在VOC2007中測試圖像的成本約為13〜20ms。
有關Yolo和Yolov2的詳細信息,請參閱其項目頁面和論文: Yolo9000:更好,更快,更強壯的Joseph Redmon和Ali Farhadi 。
注1:這仍然是一個實驗項目。 VOC07測試地圖約為0.71(在VOC07+12 TrainVal上進行了培訓, @Cory8249報告)。有關培訓的更多詳細信息,請參見第1期和第23期。
注2:我建議使用torch.utils.data.dataset編寫自己的數據加載程序,因為multiprocessing.Pool.imap也不會停止,即使沒有足夠的內存空間。 VOCDATASET的dataloader的一個示例:第71期。
注3:升級到Pytorch 0.4:#59
克隆這個存儲庫
git clone [email protected]:longcw/yolo2-pytorch.git構建reorg層( tf.extract_image_patches )
cd yolo2-pytorch
./make.sh下載訓練有素的型號yolo-voc.Wewights.h5(鏈接更新)並在demo.py中設置模型路徑
運行演示python demo.py
您可以在任何數據集上訓練YOLO2。在這裡,我們在VOC2007/2012上訓練它。
下載培訓,驗證,測試數據和VOCDEVKIT
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar將所有這些焦油提取到一個名為VOCdevkit的目錄中
tar xvf VOCtrainval_06-Nov-2007.tar
tar xvf VOCtest_06-Nov-2007.tar
tar xvf VOCdevkit_08-Jun-2007.tar它應該具有這種基本結構
$VOCdevkit / # development kit
$VOCdevkit /VOCcode/ # VOC utility code
$VOCdevkit /VOC2007 # image sets, annotations, etc.
# ... and several other directories ...由於默認情況下,該程序將數據加載到yolo2-pytorch/data中,因此您可以將數據路徑設置為以下內容。
cd yolo2-pytorch
mkdir data
cd data
ln -s $VOCdevkit VOCdevkit2007下載預處理的darknet19型號(鏈接更新),並在yolo2-pytorch/cfgs/exps/darknet19_exp1.py中設置路徑。
(可選)張量訓練。
要使用TensorBoard,請在yolo2-pytorch/cfgs/config.py中設置USE_TENSORBOARD use_tensorboard = True (https://github.com/lanpa/tensorboard-pytorch)。張板日誌將保存在training/runs中。
運行培訓計劃: python train.py 。
在yolo2-pytorch/cfgs/config.py中設置trained_model的路徑。
cd faster_rcnn_pytorch
mkdir output
python test.py遠期通行證要求您向網絡提供4個參數:
im_data圖像數據。C x H x W格式,其中C對應於圖像的顏色通道, H和W分別為高度和寬度。utils/im_transform.py中提供的imcv2_recolor函數來預處理圖像。另外,確保圖像已大小為416 x 416像素gt_boxes一個numpy數組的列表,其中每個陣列的大小為N x 4 ,其中N是圖像中的功能數量。每行的四個值應對應於x_bottom_left , y_bottom_left , x_top_right和y_top_right 。gt_classes numpy數組的列表,其中每個數組包含一個與gt_boxes中提供的每個邊界框相對應的整數值dontcare列表列表許可證:麻省理工學院許可證(麻省理工學院)