PaddleX助力無人駕駛(基於YOLOv3的車輛檢測和車道線分割)

該項目在 AI Studio 上運行;

項目地址:https://aistudio.baidu.com/aistudio/projectdetail/464339

未經作者允許,本文禁止轉載!

項目簡介:

該項目使用PaddleX提供的YOLOv3模型,在 UA-DETRAC 車輛檢測數據集進行訓練;

訓練結果能夠檢測到car,van,bus等不同類型車輛,mAP爲0.799;

並使用開源車道檢測算法,實現了無人駕駛部分的視覺感知——車輛檢測和車道線分割;

該項目使用CPU環境或GPU環境運行,PaddleX會自動選擇合適的環境;

目錄:

  1. PaddleX工具簡介;
  2. 安裝PaddleX;
  3. 設置工作環境;
  4. 數據集簡介;
  5. 生成訓練所需文件;
  6. 設置圖像數據預處理和數據增強模塊;
  7. 定義數據迭代器;
  8. 定義YOLOv3模型並開始訓練;
  9. 評估模型性能;
  10. 加載模型並用於測試;
  11. 車道線分割模塊;

項目目標:

  1. 學會使用PaddleX目標檢測模塊訓練自己的數據集;
  2. 熟練使用Paddlex提高開發效率;
  3. 使用PaddleX進行基於YOLOv3的車輛檢測和車道線分割項目開發;

最終效果:

PaddleX工具簡介:

PaddleX簡介:PaddleX是飛槳全流程開發工具,集飛槳核心框架、模型庫、工具及組件等深度學習開發所需全部能力於一身,打通深度學習開發全流程,並提供簡明易懂的Python API,方便用戶根據實際生產需求進行直接調用或二次開發,爲開發者提供飛槳全流程開發的最佳實踐。目前,該工具代碼已開源於GitHub,同時可訪問PaddleX在線使用文檔,快速查閱讀使用教程和API文檔說明。

PaddleX代碼GitHub鏈接:https://github.com/PaddlePaddle/PaddleX/tree/develop

PaddleX文檔鏈接:https://paddlex.readthedocs.io/zh_CN/latest/index.html

PaddleX官網鏈接:https://www.paddlepaddle.org.cn/paddle/paddlex

1. 安裝PaddleX庫:

pip install paddlex -i https://mirror.baidu.com/pypi/simple

!pip install paddlex -i https://mirror.baidu.com/pypi/simple
Looking in indexes: https://mirror.baidu.com/pypi/simple
Collecting paddlex
[?25l  Downloading https://mirror.baidu.com/pypi/packages/34/e7/e90aee0f861362f57ede3a4dc8d3f85407be772cd98d3ea0c2d87992d09f/paddlex-0.1.6-py3-none-any.whl (190kB)
[K     |████████████████████████████████| 194kB 13.4MB/s eta 0:00:01
[?25hCollecting paddleslim==1.0.1 (from paddlex)
[?25l  Downloading https://mirror.baidu.com/pypi/packages/69/3c/880afac020e3393da5a55b4e0b504d2b644a7ebe91092d953185f09660d1/paddleslim-1.0.1-py2.py3-none-any.whl (103kB)
[K     |████████████████████████████████| 112kB 34.2MB/s eta 0:00:01
[?25hCollecting colorama (from paddlex)
  Downloading https://mirror.baidu.com/pypi/packages/c9/dc/45cdef1b4d119eb96316b3117e6d5708a08029992b2fee2c143c7a0a5cc5/colorama-0.4.3-py2.py3-none-any.whl
Collecting paddlehub>=1.6.2 (from paddlex)
[?25l  Downloading https://mirror.baidu.com/pypi/packages/6e/07/d4839d63853c01d2f9d040ff079e63e007c9e4084e74f447baf46b426811/paddlehub-1.6.2-py3-none-any.whl (207kB)
[K     |████████████████████████████████| 215kB 52.4MB/s eta 0:00:01
[?25hRequirement already satisfied: pyyaml in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlex) (5.1.2)
Collecting pycocotools (from paddlex)
[?25l  Downloading https://mirror.baidu.com/pypi/packages/96/84/9a07b1095fd8555ba3f3d519517c8743c2554a245f9476e5e39869f948d2/pycocotools-2.0.0.tar.gz (1.5MB)
[K     |████████████████████████████████| 1.5MB 53.4MB/s eta 0:00:01
[?25hRequirement already satisfied: visualdl==1.3.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlex) (1.3.0)
Requirement already satisfied: tqdm in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlex) (4.36.1)
Requirement already satisfied: flake8 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (3.7.9)
Requirement already satisfied: pandas; python_version >= "3" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (0.23.4)
Requirement already satisfied: yapf==0.26.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (0.26.0)
Requirement already satisfied: requests in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (2.22.0)
Requirement already satisfied: gunicorn>=19.10.0; sys_platform != "win32" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (20.0.4)
Requirement already satisfied: flask>=1.1.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (1.1.1)
Requirement already satisfied: protobuf>=3.6.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (3.10.0)
Requirement already satisfied: Pillow in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (6.2.0)
Requirement already satisfied: pre-commit in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (1.21.0)
Requirement already satisfied: nltk in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (3.4.5)
Requirement already satisfied: tensorboard>=1.15 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (2.1.0)
Requirement already satisfied: opencv-python in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (4.1.1.26)
Requirement already satisfied: cma==2.7.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (2.7.0)
Requirement already satisfied: tb-paddle in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (0.3.6)
Requirement already satisfied: sentencepiece in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (0.1.85)
Requirement already satisfied: six>=1.10.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (1.12.0)
Requirement already satisfied: chardet==3.0.4 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (3.0.4)
Requirement already satisfied: colorlog in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (4.1.0)
Requirement already satisfied: numpy; python_version >= "3" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from paddlehub>=1.6.2->paddlex) (1.16.4)
Requirement already satisfied: scipy in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from visualdl==1.3.0->paddlex) (1.3.0)
Requirement already satisfied: pycodestyle<2.6.0,>=2.5.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flake8->paddlehub>=1.6.2->paddlex) (2.5.0)
Requirement already satisfied: pyflakes<2.2.0,>=2.1.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flake8->paddlehub>=1.6.2->paddlex) (2.1.1)
Requirement already satisfied: entrypoints<0.4.0,>=0.3.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flake8->paddlehub>=1.6.2->paddlex) (0.3)
Requirement already satisfied: mccabe<0.7.0,>=0.6.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flake8->paddlehub>=1.6.2->paddlex) (0.6.1)
Requirement already satisfied: python-dateutil>=2.5.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pandas; python_version >= "3"->paddlehub>=1.6.2->paddlex) (2.8.0)
Requirement already satisfied: pytz>=2011k in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pandas; python_version >= "3"->paddlehub>=1.6.2->paddlex) (2019.3)
Requirement already satisfied: idna<2.9,>=2.5 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->paddlehub>=1.6.2->paddlex) (2.8)
Requirement already satisfied: certifi>=2017.4.17 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->paddlehub>=1.6.2->paddlex) (2019.9.11)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests->paddlehub>=1.6.2->paddlex) (1.25.6)
Requirement already satisfied: setuptools>=3.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from gunicorn>=19.10.0; sys_platform != "win32"->paddlehub>=1.6.2->paddlex) (41.4.0)
Requirement already satisfied: Jinja2>=2.10.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub>=1.6.2->paddlex) (2.10.1)
Requirement already satisfied: click>=5.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub>=1.6.2->paddlex) (7.0)
Requirement already satisfied: Werkzeug>=0.15 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub>=1.6.2->paddlex) (0.16.0)
Requirement already satisfied: itsdangerous>=0.24 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from flask>=1.1.0->paddlehub>=1.6.2->paddlex) (1.1.0)
Requirement already satisfied: nodeenv>=0.11.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (1.3.4)
Requirement already satisfied: importlib-metadata; python_version < "3.8" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (0.23)
Requirement already satisfied: aspy.yaml in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (1.3.0)
Requirement already satisfied: identify>=1.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (1.4.10)
Requirement already satisfied: toml in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (0.10.0)
Requirement already satisfied: virtualenv>=15.2 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (16.7.9)
Requirement already satisfied: cfgv>=2.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from pre-commit->paddlehub>=1.6.2->paddlex) (2.0.1)
Requirement already satisfied: absl-py>=0.4 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (0.8.1)
Requirement already satisfied: markdown>=2.6.8 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (3.1.1)
Requirement already satisfied: wheel>=0.26; python_version >= "3" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (0.33.6)
Requirement already satisfied: grpcio>=1.24.3 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (1.26.0)
Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (0.4.1)
Requirement already satisfied: google-auth<2,>=1.6.3 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (1.10.0)
Requirement already satisfied: moviepy in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from tb-paddle->paddlehub>=1.6.2->paddlex) (1.0.1)
Requirement already satisfied: MarkupSafe>=0.23 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from Jinja2>=2.10.1->flask>=1.1.0->paddlehub>=1.6.2->paddlex) (1.1.1)
Requirement already satisfied: zipp>=0.5 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from importlib-metadata; python_version < "3.8"->pre-commit->paddlehub>=1.6.2->paddlex) (0.6.0)
Requirement already satisfied: requests-oauthlib>=0.7.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (1.3.0)
Requirement already satisfied: rsa<4.1,>=3.1.4 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from google-auth<2,>=1.6.3->tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (4.0)
Requirement already satisfied: pyasn1-modules>=0.2.1 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from google-auth<2,>=1.6.3->tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (0.2.7)
Requirement already satisfied: cachetools<5.0,>=2.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from google-auth<2,>=1.6.3->tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (4.0.0)
Requirement already satisfied: decorator<5.0,>=4.0.2 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from moviepy->tb-paddle->paddlehub>=1.6.2->paddlex) (4.4.0)
Requirement already satisfied: imageio<3.0,>=2.5; python_version >= "3.4" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from moviepy->tb-paddle->paddlehub>=1.6.2->paddlex) (2.6.1)
Requirement already satisfied: proglog<=1.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from moviepy->tb-paddle->paddlehub>=1.6.2->paddlex) (0.1.9)
Requirement already satisfied: imageio-ffmpeg>=0.2.0; python_version >= "3.4" in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from moviepy->tb-paddle->paddlehub>=1.6.2->paddlex) (0.3.0)
Requirement already satisfied: more-itertools in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from zipp>=0.5->importlib-metadata; python_version < "3.8"->pre-commit->paddlehub>=1.6.2->paddlex) (7.2.0)
Requirement already satisfied: oauthlib>=3.0.0 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (3.1.0)
Requirement already satisfied: pyasn1>=0.1.3 in /opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages (from rsa<4.1,>=3.1.4->google-auth<2,>=1.6.3->tensorboard>=1.15->paddlehub>=1.6.2->paddlex) (0.4.8)
Building wheels for collected packages: pycocotools
  Building wheel for pycocotools (setup.py) ... [?25ldone
[?25h  Created wheel for pycocotools: filename=pycocotools-2.0.0-cp37-cp37m-linux_x86_64.whl size=286743 sha256=846179ca66afe07fd9a89bd78995b02b34293a00ee479d72e4227173fdd29671
  Stored in directory: /home/aistudio/.cache/pip/wheels/87/53/98/53ebc0e2e042812e7626cb4e1e9e5418a7e77c187d1719620f
Successfully built pycocotools
Installing collected packages: paddleslim, colorama, paddlehub, pycocotools, paddlex
  Found existing installation: paddlehub 1.6.0
    Uninstalling paddlehub-1.6.0:
      Successfully uninstalled paddlehub-1.6.0
Successfully installed colorama-0.4.3 paddlehub-1.6.2 paddleslim-1.0.1 paddlex-0.1.6 pycocotools-2.0.0

2. 設置工作路徑,並使用0號GPU卡


import matplotlib
matplotlib.use('Agg') 
import os
os.environ['CUDA_VISIBLE_DEVICES'] = '0'
import paddlex as pdx

os.chdir('/home/aistudio/work/')

3. 數據集:

數據集簡介:

數據集使用 UA-DETRAC 數據集,是一個具有挑戰性的真實多目標檢測和多目標跟蹤基準。

該數據集由10小時的視頻組成,這些視頻由中國北京和天津的24個不同地點使用Cannon EOS 550D攝像機拍攝。

視頻以每秒 25 幀 (fps) 的速度錄製,分辨率爲 960×540 像素。

UA-DETRAC 數據集中有超過 140 000 個幀,手動標註了 8250 輛車,總共有 121 萬個標記了邊界框的目標。

4. 生成所需文件:

這裏的PaddleX同時支持VOC和COCO兩種格式的數據;

需要的文件有:

  1. labels.txt:保存目標類別的文件,不包括背景類;

  1. train_list.txt和val_list.txt:保存訓練/測試所需的圖片和標註文件的相對路徑;

!unzip /home/aistudio/data/data34332/VOC2012.zip -d ./

imgs = os.listdir('./VOC2012/JPEGImages')
print('total:', len(imgs))

with open('./VOC2012/train_list.txt', 'w') as f:
    for im in imgs[:-200]:
        info = 'JPEGImages/'+im+' '
        info += 'Annotations/'+im[:-4]+'.xml\n'
        f.write(info)

with open('./VOC2012/val_list.txt', 'w') as f:
    for im in imgs[-200:]:
        info = 'JPEGImages/'+im+' '
        info += 'Annotations/'+im[:-4]+'.xml\n'
        f.write(info)
total: 6000

5.設置圖像數據預處理和數據增強模塊:

具體參數見:

https://paddlex.readthedocs.io/zh_CN/latest/apis/transforms/det_transforms.html


from paddlex.det import transforms
train_transforms = transforms.Compose([
    transforms.MixupImage(mixup_epoch=250),
    transforms.RandomDistort(),
    transforms.RandomExpand(),
    transforms.RandomCrop(),
    transforms.Resize(target_size=608, interp='RANDOM'),
    transforms.RandomHorizontalFlip(),
    transforms.Normalize(),
])

eval_transforms = transforms.Compose([
    transforms.Resize(target_size=608, interp='CUBIC'),
    transforms.Normalize(),
])

6.定義數據迭代器:

參數

  • data_dir (str): 數據集所在的目錄路徑。

  • file_list (str): 描述數據集圖片文件和對應標註文件的文件路徑(文本內每行路徑爲相對data_dir的相對路徑)。

  • label_list (str): 描述數據集包含的類別信息文件路徑。

  • transforms (paddlex.det.transforms): 數據集中每個樣本的預處理/增強算子,詳見paddlex.det.transforms。

  • num_workers (int|str):數據集中樣本在預處理過程中的線程或進程數。默認爲’auto’。當設爲’auto’時,根據系統的實際CPU核數設置num_workers: 如果CPU核數的一半大於8,則num_workers爲8,否則爲CPU核數的一半。

  • buffer_size (int): 數據集中樣本在預處理過程中隊列的緩存長度,以樣本數爲單位。默認爲100。

  • parallel_method (str): 數據集中樣本在預處理過程中並行處理的方式,支持’thread’線程和’process’進程兩種方式。默認爲’thread’(Windows和Mac下會強制使用thread,該參數無效)。

  • shuffle (bool): 是否需要對數據集中樣本打亂順序。默認爲False。

base = './VOC2012/'

train_dataset = pdx.datasets.VOCDetection(
    data_dir=base,
    file_list=base+'train_list.txt',
    label_list='labels.txt',
    transforms=train_transforms,
    shuffle=True)
eval_dataset = pdx.datasets.VOCDetection(
    data_dir=base,
    file_list=base+'val_list.txt',
    label_list='labels.txt',
    transforms=eval_transforms)
2020-05-12 00:11:34 [INFO]	Starting to read file list from dataset...
2020-05-12 00:11:35 [INFO]	5800 samples in file ./VOC2012/train_list.txt
creating index...
index created!
2020-05-12 00:11:35 [INFO]	Starting to read file list from dataset...
2020-05-12 00:11:35 [INFO]	200 samples in file ./VOC2012/val_list.txt
creating index...
index created!

7. 定義YOLOv3模型並開始訓練:

YOLOv3簡介:

論文地址:https://arxiv.org/abs/1804.02767

‘Sometimes you just kinda phone it in for a year, you know?’

作者說他一年大部分時間去刷 Twitter 了,然後玩了(play around)一陣子 GAN;

正好剩下一點時間,就改進了一下 YOLO 算法,提出了 YOLO v3;

參數說明:

  • num_classes (int): 類別數。默認爲80。
  • backbone (str): YOLOv3的backbone網絡,取值範圍爲[‘DarkNet53’, ‘ResNet34’, ‘MobileNetV1’, ‘MobileNetV3_large’]。默認爲’MobileNetV1’。
  • anchors (list|tuple): anchor框的寬度和高度,爲None時表示使用默認值 [[10, 13], [16, 30], [33, 23], [30, 61], [62, 45], [59, 119], [116, 90], [156, 198], [373, 326]]。
  • anchor_masks (list|tuple): 在計算YOLOv3損失時,使用anchor的mask索引,爲None時表示使用默認值 [[6, 7, 8], [3, 4, 5], [0, 1, 2]]。
  • ignore_threshold (float): 在計算YOLOv3損失時,IoU大於ignore_threshold的預測框的置信度被忽略。默認爲0.7。
  • nms_score_threshold (float): 檢測框的置信度得分閾值,置信度得分低於閾值的框應該被忽略。默認爲0.01。
  • nms_topk (int): 進行NMS時,根據置信度保留的最大檢測框數。默認爲1000。
  • nms_keep_topk (int): 進行NMS後,每個圖像要保留的總檢測框數。默認爲100。
  • nms_iou_threshold (float): 進行NMS時,用於剔除檢測框IOU的閾值。默認爲0.45。
  • label_smooth (bool): 是否使用label smooth。默認值爲False。
  • train_random_shapes (list|tuple): 訓練時從列表中隨機選擇圖像大小。默認值爲[320, 352, 384, 416, 448, 480, 512, 544, 576, 608]。

通過K-means獲取anchors大小:

## 使用ET模塊解析xml標註文件

import xml.etree.ElementTree as ET
import numpy as np

tar_size = 608

def load_one_info(name):

    filename = os.path.join(base, 'Annotations', name)

    tree = ET.parse(filename)
    size = tree.find('size')
    width = float(size.find('width').text)
    height = float(size.find('height').text)
    ratio = min(tar_size / width, tar_size / height)

    Objects = tree.findall('object')
    objs_num = len(Objects)
    Boxes = np.zeros((objs_num, 4), dtype=np.float32)
    True_classes = np.zeros((objs_num), dtype=np.float32)
    
    result = []
    for i, obj in enumerate(Objects):

        bbox = obj.find('bndbox')

        x_min = float(bbox.find('xmin').text) - 1
        y_min = float(bbox.find('ymin').text) - 1
        x_max = float(bbox.find('xmax').text) - 1
        y_max = float(bbox.find('ymax').text) - 1

        w = ratio * (x_max - x_min)
        h = ratio * (y_max - y_min)
        result.append([w, h])

    return result
def iou(box, clusters):

    x = np.minimum(clusters[:, 0], box[0])
    y = np.minimum(clusters[:, 1], box[1])
    if np.count_nonzero(x == 0) > 0 or np.count_nonzero(y == 0) > 0:
        return 0
        raise ValueError("Box has no area")

    intersection = x * y
    box_area = box[0] * box[1]
    cluster_area = clusters[:, 0] * clusters[:, 1]

    iou_ = np.true_divide(intersection, box_area +
                          cluster_area - intersection + 1e-10)
    # iou_ = intersection / (box_area + cluster_area - intersection + 1e-10)

    return iou_


def avg_iou(boxes, clusters):

    return np.mean([np.max(iou(boxes[i], clusters)) for i in range(boxes.shape[0])])


def translate_boxes(boxes):

    new_boxes = boxes.copy()
    for row in range(new_boxes.shape[0]):
        new_boxes[row][2] = np.abs(new_boxes[row][2] - new_boxes[row][0])
        new_boxes[row][3] = np.abs(new_boxes[row][3] - new_boxes[row][1])
    return np.delete(new_boxes, [0, 1], axis=1)


def kmeans(boxes, k, dist=np.median):

    rows = boxes.shape[0]

    distances = np.empty((rows, k))
    last_clusters = np.zeros((rows,))

    np.random.seed()

    # the Forgy method will fail if the whole array contains the same rows
    clusters = boxes[np.random.choice(rows, k, replace=False)]

    while True:
        for row in range(rows):
            distances[row] = 1 - iou(boxes[row], clusters)

        nearest_clusters = np.argmin(distances, axis=1)

        if (last_clusters == nearest_clusters).all():
            break

        for cluster in range(k):
            clusters[cluster] = dist(
                boxes[nearest_clusters == cluster], axis=0)

        last_clusters = nearest_clusters

    return clusters


def get_kmeans(anno, cluster_num=9):

    anchors = kmeans(anno, cluster_num)
    ave_iou = avg_iou(anno, anchors)

    anchors = anchors.astype('int').tolist()

    anchors = sorted(anchors, key=lambda x: x[0] * x[1])

    return anchors, ave_iou

計算合適的anchor大小:

result = []
for name in os.listdir(os.path.join(base, 'Annotations')):  
    result.extend(load_one_info(name))

result = np.array(result)
anchors, ave_iou = get_kmeans(result, 9)

anchor_string = ''
anchor_sizes = []
for anchor in anchors:
    anchor_string += '{},{}, '.format(anchor[0], anchor[1])
    anchor_sizes.append([anchor[0], anchor[1]])
anchor_string = anchor_string[:-2]

print('anchors are:')
print(anchor_string)
print('the average iou is:')
print(ave_iou)

anchors are:
13,11, 17,15, 23,17, 29,23, 41,29, 68,33, 51,46, 93,57, 135,95
the average iou is:
0.7711987971699223

開始訓練:

num_classes = len(train_dataset.labels)
print('class num:', num_classes)
model = pdx.det.YOLOv3(num_classes=num_classes, backbone='DarkNet53', anchors=anchor_sizes)
model.train(
    num_epochs=50,
    train_dataset=train_dataset,
    train_batch_size=4,
    eval_dataset=eval_dataset,
    learning_rate=0.00025,
    lr_decay_epochs=[20, 40],
    save_interval_epochs=2,
    log_interval_steps=100,
    save_dir='./yolov3_darknet53',
    # pretrain_weights='./yolov3_darknet53/best_model',
    pretrain_weights='IMAGENET',
    use_vdl=True)


class num: 4
2020-05-12 00:13:13 [INFO]	Load pretrain weights from ./yolov3_darknet53/pretrain/DarkNet53.
2020-05-12 00:13:14 [INFO]	There are 260 varaibles in ./yolov3_darknet53/pretrain/DarkNet53 are loaded.
2020-05-12 00:13:39 [INFO]	[TRAIN] Epoch=1/50, Step=100/1450, loss=90.836319, lr=2.5e-05, time_each_step=0.21s, eta=4:20:25
2020-05-12 00:14:01 [INFO]	[TRAIN] Epoch=1/50, Step=200/1450, loss=30.332376, lr=5e-05, time_each_step=0.18s, eta=3:46:21
2020-05-12 00:14:19 [INFO]	[TRAIN] Epoch=1/50, Step=300/1450, loss=38.135971, lr=7.5e-05, time_each_step=0.19s, eta=3:55:6
2020-05-12 00:14:38 [INFO]	[TRAIN] Epoch=1/50, Step=400/1450, loss=56.522263, lr=0.0001, time_each_step=0.19s, eta=3:53:39
2020-05-12 00:14:58 [INFO]	[TRAIN] Epoch=1/50, Step=500/1450, loss=57.342705, lr=0.000125, time_each_step=0.2s, eta=4:2:10
2020-05-12 00:15:15 [INFO]	[TRAIN] Epoch=1/50, Step=600/1450, loss=44.888145, lr=0.00015, time_each_step=0.16s, eta=3:14:17
2020-05-12 00:15:34 [INFO]	[TRAIN] Epoch=1/50, Step=700/1450, loss=52.995605, lr=0.000175, time_each_step=0.17s, eta=3:32:2
2020-05-12 00:15:53 [INFO]	[TRAIN] Epoch=1/50, Step=800/1450, loss=55.001724, lr=0.0002, time_each_step=0.19s, eta=3:53:13
2020-05-12 00:16:12 [INFO]	[TRAIN] Epoch=1/50, Step=900/1450, loss=32.293694, lr=0.000225, time_each_step=0.17s, eta=3:25:46
2020-05-12 00:16:31 [INFO]	[TRAIN] Epoch=1/50, Step=1000/1450, loss=47.958351, lr=0.00025, time_each_step=0.2s, eta=4:1:46
2020-05-12 00:16:50 [INFO]	[TRAIN] Epoch=1/50, Step=1100/1450, loss=48.19043, lr=0.00025, time_each_step=0.2s, eta=4:4:11
2020-05-12 00:17:09 [INFO]	[TRAIN] Epoch=1/50, Step=1200/1450, loss=30.020916, lr=0.00025, time_each_step=0.18s, eta=3:36:56
2020-05-12 00:17:29 [INFO]	[TRAIN] Epoch=1/50, Step=1300/1450, loss=32.130772, lr=0.00025, time_each_step=0.21s, eta=4:13:17
2020-05-12 00:17:47 [INFO]	[TRAIN] Epoch=1/50, Step=1400/1450, loss=48.995987, lr=0.00025, time_each_step=0.2s, eta=3:58:32
2020-05-12 00:17:56 [INFO]	[TRAIN] Epoch 1 finished, loss=102.70462, lr=0.000164 .
2020-05-12 00:18:10 [INFO]	[TRAIN] Epoch=2/50, Step=50/1450, loss=35.396145, lr=0.00025, time_each_step=0.21s, eta=3:54:59
2020-05-12 00:18:32 [INFO]	[TRAIN] Epoch=2/50, Step=150/1450, loss=40.334175, lr=0.00025, time_each_step=0.22s, eta=3:55:16
2020-05-12 00:18:53 [INFO]	[TRAIN] Epoch=2/50, Step=250/1450, loss=62.602486, lr=0.00025, time_each_step=0.18s, eta=3:53:6
2020-05-12 00:19:12 [INFO]	[TRAIN] Epoch=2/50, Step=350/1450, loss=31.367861, lr=0.00025, time_each_step=0.18s, eta=3:53:3
2020-05-12 00:19:31 [INFO]	[TRAIN] Epoch=2/50, Step=450/1450, loss=25.375612, lr=0.00025, time_each_step=0.2s, eta=3:53:16
2020-05-12 00:19:50 [INFO]	[TRAIN] Epoch=2/50, Step=550/1450, loss=22.775631, lr=0.00025, time_each_step=0.19s, eta=3:52:34
2020-05-12 00:20:09 [INFO]	[TRAIN] Epoch=2/50, Step=650/1450, loss=37.939877, lr=0.00025, time_each_step=0.18s, eta=3:52:8
2020-05-12 00:20:28 [INFO]	[TRAIN] Epoch=2/50, Step=750/1450, loss=47.882256, lr=0.00025, time_each_step=0.18s, eta=3:51:32
2020-05-12 00:20:47 [INFO]	[TRAIN] Epoch=2/50, Step=850/1450, loss=20.347694, lr=0.00025, time_each_step=0.19s, eta=3:51:40
2020-05-12 00:21:07 [INFO]	[TRAIN] Epoch=2/50, Step=950/1450, loss=62.189346, lr=0.00025, time_each_step=0.15s, eta=3:50:20
2020-05-12 00:21:26 [INFO]	[TRAIN] Epoch=2/50, Step=1050/1450, loss=48.856571, lr=0.00025, time_each_step=0.2s, eta=3:51:16
2020-05-12 00:21:46 [INFO]	[TRAIN] Epoch=2/50, Step=1150/1450, loss=34.999241, lr=0.00025, time_each_step=0.19s, eta=3:50:46
2020-05-12 00:22:05 [INFO]	[TRAIN] Epoch=2/50, Step=1250/1450, loss=40.234844, lr=0.00025, time_each_step=0.19s, eta=3:50:22
2020-05-12 00:22:24 [INFO]	[TRAIN] Epoch=2/50, Step=1350/1450, loss=28.014271, lr=0.00025, time_each_step=0.19s, eta=3:50:3
2020-05-12 00:22:41 [INFO]	[TRAIN] Epoch=2/50, Step=1450/1450, loss=29.262774, lr=0.00025, time_each_step=0.18s, eta=3:49:36
2020-05-12 00:22:41 [INFO]	[TRAIN] Epoch 2 finished, loss=35.580154, lr=0.00025 .
2020-05-12 00:22:41 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.10it/s]


2020-05-12 00:22:51 [INFO]	[EVAL] Finished, Epoch=2, bbox_map=46.888494 .
2020-05-12 00:22:59 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 00:23:05 [INFO]	Model saved in ./yolov3_darknet53/epoch_2.
2020-05-12 00:23:05 [INFO]	Current evaluated best model in eval_dataset is epoch_2, bbox_map=46.88849374107452
2020-05-12 00:23:31 [INFO]	[TRAIN] Epoch=3/50, Step=100/1450, loss=36.873146, lr=0.00025, time_each_step=0.18s, eta=3:57:9
2020-05-12 00:23:53 [INFO]	[TRAIN] Epoch=3/50, Step=200/1450, loss=33.205597, lr=0.00025, time_each_step=0.21s, eta=3:57:26
2020-05-12 00:24:12 [INFO]	[TRAIN] Epoch=3/50, Step=300/1450, loss=32.045303, lr=0.00025, time_each_step=0.18s, eta=3:56:38
2020-05-12 00:24:30 [INFO]	[TRAIN] Epoch=3/50, Step=400/1450, loss=59.919994, lr=0.00025, time_each_step=0.19s, eta=3:56:27
2020-05-12 00:24:48 [INFO]	[TRAIN] Epoch=3/50, Step=500/1450, loss=26.804708, lr=0.00025, time_each_step=0.18s, eta=3:55:57
2020-05-12 00:25:08 [INFO]	[TRAIN] Epoch=3/50, Step=600/1450, loss=25.675621, lr=0.00025, time_each_step=0.18s, eta=3:55:41
2020-05-12 00:25:28 [INFO]	[TRAIN] Epoch=3/50, Step=700/1450, loss=26.631315, lr=0.00025, time_each_step=0.19s, eta=3:55:32
2020-05-12 00:25:47 [INFO]	[TRAIN] Epoch=3/50, Step=800/1450, loss=17.848217, lr=0.00025, time_each_step=0.16s, eta=3:54:53
2020-05-12 00:26:06 [INFO]	[TRAIN] Epoch=3/50, Step=900/1450, loss=44.478401, lr=0.00025, time_each_step=0.19s, eta=3:54:55
2020-05-12 00:26:25 [INFO]	[TRAIN] Epoch=3/50, Step=1000/1450, loss=15.602297, lr=0.00025, time_each_step=0.19s, eta=3:54:33
2020-05-12 00:26:44 [INFO]	[TRAIN] Epoch=3/50, Step=1100/1450, loss=23.755878, lr=0.00025, time_each_step=0.2s, eta=3:54:21
2020-05-12 00:27:04 [INFO]	[TRAIN] Epoch=3/50, Step=1200/1450, loss=35.302475, lr=0.00025, time_each_step=0.2s, eta=3:53:58
2020-05-12 00:27:24 [INFO]	[TRAIN] Epoch=3/50, Step=1300/1450, loss=37.850563, lr=0.00025, time_each_step=0.19s, eta=3:53:38
2020-05-12 00:27:42 [INFO]	[TRAIN] Epoch=3/50, Step=1400/1450, loss=36.558456, lr=0.00025, time_each_step=0.18s, eta=3:53:18
2020-05-12 00:27:51 [INFO]	[TRAIN] Epoch 3 finished, loss=32.683498, lr=0.00025 .
2020-05-12 00:28:06 [INFO]	[TRAIN] Epoch=4/50, Step=50/1450, loss=39.314713, lr=0.00025, time_each_step=0.26s, eta=3:54:38
2020-05-12 00:28:28 [INFO]	[TRAIN] Epoch=4/50, Step=150/1450, loss=21.895, lr=0.00025, time_each_step=0.22s, eta=3:53:27
2020-05-12 00:28:50 [INFO]	[TRAIN] Epoch=4/50, Step=250/1450, loss=26.817623, lr=0.00025, time_each_step=0.2s, eta=3:52:42
2020-05-12 00:29:10 [INFO]	[TRAIN] Epoch=4/50, Step=350/1450, loss=13.023824, lr=0.00025, time_each_step=0.2s, eta=3:52:19
2020-05-12 00:29:29 [INFO]	[TRAIN] Epoch=4/50, Step=450/1450, loss=27.195732, lr=0.00025, time_each_step=0.19s, eta=3:51:49
2020-05-12 00:29:48 [INFO]	[TRAIN] Epoch=4/50, Step=550/1450, loss=41.456017, lr=0.00025, time_each_step=0.18s, eta=3:51:22
2020-05-12 00:30:07 [INFO]	[TRAIN] Epoch=4/50, Step=650/1450, loss=41.300419, lr=0.00025, time_each_step=0.17s, eta=3:50:57
2020-05-12 00:30:26 [INFO]	[TRAIN] Epoch=4/50, Step=750/1450, loss=13.581354, lr=0.00025, time_each_step=0.2s, eta=3:51:3
2020-05-12 00:30:44 [INFO]	[TRAIN] Epoch=4/50, Step=850/1450, loss=32.015923, lr=0.00025, time_each_step=0.18s, eta=3:50:28
2020-05-12 00:31:03 [INFO]	[TRAIN] Epoch=4/50, Step=950/1450, loss=18.628242, lr=0.00025, time_each_step=0.18s, eta=3:50:8
2020-05-12 00:31:22 [INFO]	[TRAIN] Epoch=4/50, Step=1050/1450, loss=27.136436, lr=0.00025, time_each_step=0.18s, eta=3:49:53
2020-05-12 00:31:41 [INFO]	[TRAIN] Epoch=4/50, Step=1150/1450, loss=35.146103, lr=0.00025, time_each_step=0.21s, eta=3:49:45
2020-05-12 00:32:01 [INFO]	[TRAIN] Epoch=4/50, Step=1250/1450, loss=24.502335, lr=0.00025, time_each_step=0.19s, eta=3:49:19
2020-05-12 00:32:21 [INFO]	[TRAIN] Epoch=4/50, Step=1350/1450, loss=35.977383, lr=0.00025, time_each_step=0.19s, eta=3:49:0
2020-05-12 00:32:39 [INFO]	[TRAIN] Epoch=4/50, Step=1450/1450, loss=36.580956, lr=0.00025, time_each_step=0.19s, eta=3:48:40
2020-05-12 00:32:39 [INFO]	[TRAIN] Epoch 4 finished, loss=30.574234, lr=0.00025 .
2020-05-12 00:32:39 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.17it/s]


2020-05-12 00:32:49 [INFO]	[EVAL] Finished, Epoch=4, bbox_map=60.220531 .
2020-05-12 00:32:55 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 00:33:02 [INFO]	Model saved in ./yolov3_darknet53/epoch_4.
2020-05-12 00:33:02 [INFO]	Current evaluated best model in eval_dataset is epoch_4, bbox_map=60.22053064209235
2020-05-12 00:33:29 [INFO]	[TRAIN] Epoch=5/50, Step=100/1450, loss=28.980362, lr=0.00025, time_each_step=0.21s, eta=3:49:28
2020-05-12 00:33:49 [INFO]	[TRAIN] Epoch=5/50, Step=200/1450, loss=58.217068, lr=0.00025, time_each_step=0.19s, eta=3:48:46
2020-05-12 00:34:10 [INFO]	[TRAIN] Epoch=5/50, Step=300/1450, loss=27.223774, lr=0.00025, time_each_step=0.17s, eta=3:48:8
2020-05-12 00:34:30 [INFO]	[TRAIN] Epoch=5/50, Step=400/1450, loss=23.776609, lr=0.00025, time_each_step=0.2s, eta=3:48:17
2020-05-12 00:34:50 [INFO]	[TRAIN] Epoch=5/50, Step=500/1450, loss=40.966614, lr=0.00025, time_each_step=0.19s, eta=3:47:44
2020-05-12 00:35:09 [INFO]	[TRAIN] Epoch=5/50, Step=600/1450, loss=10.685909, lr=0.00025, time_each_step=0.19s, eta=3:47:32
2020-05-12 00:35:28 [INFO]	[TRAIN] Epoch=5/50, Step=700/1450, loss=38.851761, lr=0.00025, time_each_step=0.2s, eta=3:47:19
2020-05-12 00:35:46 [INFO]	[TRAIN] Epoch=5/50, Step=800/1450, loss=38.138374, lr=0.00025, time_each_step=0.17s, eta=3:46:40
2020-05-12 00:36:04 [INFO]	[TRAIN] Epoch=5/50, Step=900/1450, loss=22.054966, lr=0.00025, time_each_step=0.19s, eta=3:46:33
2020-05-12 00:36:24 [INFO]	[TRAIN] Epoch=5/50, Step=1000/1450, loss=22.615217, lr=0.00025, time_each_step=0.21s, eta=3:46:22
2020-05-12 00:36:43 [INFO]	[TRAIN] Epoch=5/50, Step=1100/1450, loss=29.731739, lr=0.00025, time_each_step=0.17s, eta=3:45:48
2020-05-12 00:37:02 [INFO]	[TRAIN] Epoch=5/50, Step=1200/1450, loss=15.008889, lr=0.00025, time_each_step=0.18s, eta=3:45:34
2020-05-12 00:37:21 [INFO]	[TRAIN] Epoch=5/50, Step=1300/1450, loss=32.251541, lr=0.00025, time_each_step=0.2s, eta=3:45:19
2020-05-12 00:37:39 [INFO]	[TRAIN] Epoch=5/50, Step=1400/1450, loss=26.060598, lr=0.00025, time_each_step=0.16s, eta=3:44:56
2020-05-12 00:37:48 [INFO]	[TRAIN] Epoch 5 finished, loss=29.186371, lr=0.00025 .
2020-05-12 00:38:04 [INFO]	[TRAIN] Epoch=6/50, Step=50/1450, loss=18.732601, lr=0.00025, time_each_step=0.22s, eta=3:44:4
2020-05-12 00:38:27 [INFO]	[TRAIN] Epoch=6/50, Step=150/1450, loss=51.756397, lr=0.00025, time_each_step=0.22s, eta=3:43:34
2020-05-12 00:38:48 [INFO]	[TRAIN] Epoch=6/50, Step=250/1450, loss=31.611897, lr=0.00025, time_each_step=0.21s, eta=3:43:1
2020-05-12 00:39:09 [INFO]	[TRAIN] Epoch=6/50, Step=350/1450, loss=27.376949, lr=0.00025, time_each_step=0.21s, eta=3:42:40
2020-05-12 00:39:28 [INFO]	[TRAIN] Epoch=6/50, Step=450/1450, loss=25.953566, lr=0.00025, time_each_step=0.19s, eta=3:42:6
2020-05-12 00:39:48 [INFO]	[TRAIN] Epoch=6/50, Step=550/1450, loss=28.011513, lr=0.00025, time_each_step=0.2s, eta=3:41:51
2020-05-12 00:40:06 [INFO]	[TRAIN] Epoch=6/50, Step=650/1450, loss=23.405727, lr=0.00025, time_each_step=0.18s, eta=3:41:15
2020-05-12 00:40:26 [INFO]	[TRAIN] Epoch=6/50, Step=750/1450, loss=20.119585, lr=0.00025, time_each_step=0.16s, eta=3:40:47
2020-05-12 00:40:45 [INFO]	[TRAIN] Epoch=6/50, Step=850/1450, loss=27.611019, lr=0.00025, time_each_step=0.18s, eta=3:40:40
2020-05-12 00:41:04 [INFO]	[TRAIN] Epoch=6/50, Step=950/1450, loss=19.144417, lr=0.00025, time_each_step=0.2s, eta=3:40:29
2020-05-12 00:41:22 [INFO]	[TRAIN] Epoch=6/50, Step=1050/1450, loss=42.339741, lr=0.00025, time_each_step=0.19s, eta=3:40:8
2020-05-12 00:41:42 [INFO]	[TRAIN] Epoch=6/50, Step=1150/1450, loss=45.843353, lr=0.00025, time_each_step=0.19s, eta=3:39:49
2020-05-12 00:42:01 [INFO]	[TRAIN] Epoch=6/50, Step=1250/1450, loss=7.673579, lr=0.00025, time_each_step=0.19s, eta=3:39:30
2020-05-12 00:42:20 [INFO]	[TRAIN] Epoch=6/50, Step=1350/1450, loss=14.107157, lr=0.00025, time_each_step=0.19s, eta=3:39:10
2020-05-12 00:42:39 [INFO]	[TRAIN] Epoch=6/50, Step=1450/1450, loss=20.893751, lr=0.00025, time_each_step=0.19s, eta=3:38:52
2020-05-12 00:42:39 [INFO]	[TRAIN] Epoch 6 finished, loss=28.598406, lr=0.00025 .
2020-05-12 00:42:39 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.27it/s]


2020-05-12 00:42:49 [INFO]	[EVAL] Finished, Epoch=6, bbox_map=63.221593 .
2020-05-12 00:42:55 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 00:43:02 [INFO]	Model saved in ./yolov3_darknet53/epoch_6.
2020-05-12 00:43:02 [INFO]	Current evaluated best model in eval_dataset is epoch_6, bbox_map=63.22159336869293
2020-05-12 00:43:31 [INFO]	[TRAIN] Epoch=7/50, Step=100/1450, loss=32.115093, lr=0.00025, time_each_step=0.19s, eta=3:40:49
2020-05-12 00:43:52 [INFO]	[TRAIN] Epoch=7/50, Step=200/1450, loss=23.055647, lr=0.00025, time_each_step=0.22s, eta=3:41:9
2020-05-12 00:44:12 [INFO]	[TRAIN] Epoch=7/50, Step=300/1450, loss=54.78656, lr=0.00025, time_each_step=0.23s, eta=3:40:52
2020-05-12 00:44:32 [INFO]	[TRAIN] Epoch=7/50, Step=400/1450, loss=19.66951, lr=0.00025, time_each_step=0.21s, eta=3:40:7
2020-05-12 00:44:51 [INFO]	[TRAIN] Epoch=7/50, Step=500/1450, loss=24.190586, lr=0.00025, time_each_step=0.18s, eta=3:39:22
2020-05-12 00:45:10 [INFO]	[TRAIN] Epoch=7/50, Step=600/1450, loss=18.828943, lr=0.00025, time_each_step=0.2s, eta=3:39:25
2020-05-12 00:45:30 [INFO]	[TRAIN] Epoch=7/50, Step=700/1450, loss=23.8498, lr=0.00025, time_each_step=0.21s, eta=3:39:4
2020-05-12 00:45:50 [INFO]	[TRAIN] Epoch=7/50, Step=800/1450, loss=33.033199, lr=0.00025, time_each_step=0.19s, eta=3:38:31
2020-05-12 00:46:10 [INFO]	[TRAIN] Epoch=7/50, Step=900/1450, loss=39.397209, lr=0.00025, time_each_step=0.19s, eta=3:38:17
2020-05-12 00:46:29 [INFO]	[TRAIN] Epoch=7/50, Step=1000/1450, loss=12.950114, lr=0.00025, time_each_step=0.2s, eta=3:38:1
2020-05-12 00:46:46 [INFO]	[TRAIN] Epoch=7/50, Step=1100/1450, loss=18.714979, lr=0.00025, time_each_step=0.17s, eta=3:37:29
2020-05-12 00:47:05 [INFO]	[TRAIN] Epoch=7/50, Step=1200/1450, loss=39.082924, lr=0.00025, time_each_step=0.2s, eta=3:37:20
2020-05-12 00:47:24 [INFO]	[TRAIN] Epoch=7/50, Step=1300/1450, loss=19.401649, lr=0.00025, time_each_step=0.21s, eta=3:37:2
2020-05-12 00:47:42 [INFO]	[TRAIN] Epoch=7/50, Step=1400/1450, loss=36.706314, lr=0.00025, time_each_step=0.18s, eta=3:36:40
2020-05-12 00:47:50 [INFO]	[TRAIN] Epoch 7 finished, loss=27.711109, lr=0.00025 .
2020-05-12 00:48:06 [INFO]	[TRAIN] Epoch=8/50, Step=50/1450, loss=14.79617, lr=0.00025, time_each_step=0.24s, eta=3:36:0
2020-05-12 00:48:27 [INFO]	[TRAIN] Epoch=8/50, Step=150/1450, loss=11.435325, lr=0.00025, time_each_step=0.2s, eta=3:34:47
2020-05-12 00:48:49 [INFO]	[TRAIN] Epoch=8/50, Step=250/1450, loss=18.76383, lr=0.00025, time_each_step=0.22s, eta=3:34:50
2020-05-12 00:49:08 [INFO]	[TRAIN] Epoch=8/50, Step=350/1450, loss=37.163742, lr=0.00025, time_each_step=0.17s, eta=3:33:29
2020-05-12 00:49:27 [INFO]	[TRAIN] Epoch=8/50, Step=450/1450, loss=18.284781, lr=0.00025, time_each_step=0.19s, eta=3:33:31
2020-05-12 00:49:46 [INFO]	[TRAIN] Epoch=8/50, Step=550/1450, loss=23.780361, lr=0.00025, time_each_step=0.18s, eta=3:33:5
2020-05-12 00:50:06 [INFO]	[TRAIN] Epoch=8/50, Step=650/1450, loss=45.296104, lr=0.00025, time_each_step=0.21s, eta=3:33:11
2020-05-12 00:50:25 [INFO]	[TRAIN] Epoch=8/50, Step=750/1450, loss=33.907814, lr=0.00025, time_each_step=0.21s, eta=3:32:52
2020-05-12 00:50:44 [INFO]	[TRAIN] Epoch=8/50, Step=850/1450, loss=45.375519, lr=0.00025, time_each_step=0.18s, eta=3:32:15
2020-05-12 00:51:04 [INFO]	[TRAIN] Epoch=8/50, Step=950/1450, loss=38.587921, lr=0.00025, time_each_step=0.2s, eta=3:32:7
2020-05-12 00:51:23 [INFO]	[TRAIN] Epoch=8/50, Step=1050/1450, loss=31.981222, lr=0.00025, time_each_step=0.2s, eta=3:31:45
2020-05-12 00:51:42 [INFO]	[TRAIN] Epoch=8/50, Step=1150/1450, loss=31.693062, lr=0.00025, time_each_step=0.21s, eta=3:31:29
2020-05-12 00:52:00 [INFO]	[TRAIN] Epoch=8/50, Step=1250/1450, loss=10.947015, lr=0.00025, time_each_step=0.17s, eta=3:30:59
2020-05-12 00:52:20 [INFO]	[TRAIN] Epoch=8/50, Step=1350/1450, loss=23.797216, lr=0.00025, time_each_step=0.19s, eta=3:30:44
2020-05-12 00:52:38 [INFO]	[TRAIN] Epoch=8/50, Step=1450/1450, loss=25.962158, lr=0.00025, time_each_step=0.19s, eta=3:30:25
2020-05-12 00:52:38 [INFO]	[TRAIN] Epoch 8 finished, loss=27.227463, lr=0.00025 .
2020-05-12 00:52:38 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:10<00:00,  4.89it/s]


2020-05-12 00:52:49 [INFO]	[EVAL] Finished, Epoch=8, bbox_map=64.861354 .
2020-05-12 00:52:56 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 00:53:02 [INFO]	Model saved in ./yolov3_darknet53/epoch_8.
2020-05-12 00:53:02 [INFO]	Current evaluated best model in eval_dataset is epoch_8, bbox_map=64.86135422006643
2020-05-12 00:53:27 [INFO]	[TRAIN] Epoch=9/50, Step=100/1450, loss=44.447197, lr=0.00025, time_each_step=0.2s, eta=3:29:27
2020-05-12 00:53:48 [INFO]	[TRAIN] Epoch=9/50, Step=200/1450, loss=44.456738, lr=0.00025, time_each_step=0.21s, eta=3:29:27
2020-05-12 00:54:08 [INFO]	[TRAIN] Epoch=9/50, Step=300/1450, loss=35.494843, lr=0.00025, time_each_step=0.18s, eta=3:28:28
2020-05-12 00:54:25 [INFO]	[TRAIN] Epoch=9/50, Step=400/1450, loss=27.70414, lr=0.00025, time_each_step=0.18s, eta=3:28:6
2020-05-12 00:54:43 [INFO]	[TRAIN] Epoch=9/50, Step=500/1450, loss=21.390137, lr=0.00025, time_each_step=0.17s, eta=3:27:38
2020-05-12 00:55:00 [INFO]	[TRAIN] Epoch=9/50, Step=600/1450, loss=36.297546, lr=0.00025, time_each_step=0.17s, eta=3:27:22
2020-05-12 00:55:19 [INFO]	[TRAIN] Epoch=9/50, Step=700/1450, loss=51.014328, lr=0.00025, time_each_step=0.18s, eta=3:27:13
2020-05-12 00:55:36 [INFO]	[TRAIN] Epoch=9/50, Step=800/1450, loss=8.079763, lr=0.00025, time_each_step=0.17s, eta=3:26:50
2020-05-12 00:55:55 [INFO]	[TRAIN] Epoch=9/50, Step=900/1450, loss=32.928394, lr=0.00025, time_each_step=0.2s, eta=3:26:49
2020-05-12 00:56:15 [INFO]	[TRAIN] Epoch=9/50, Step=1000/1450, loss=42.056828, lr=0.00025, time_each_step=0.18s, eta=3:26:24
2020-05-12 00:56:33 [INFO]	[TRAIN] Epoch=9/50, Step=1100/1450, loss=28.02895, lr=0.00025, time_each_step=0.18s, eta=3:26:3
2020-05-12 00:56:51 [INFO]	[TRAIN] Epoch=9/50, Step=1200/1450, loss=27.247772, lr=0.00025, time_each_step=0.17s, eta=3:25:43
2020-05-12 00:57:10 [INFO]	[TRAIN] Epoch=9/50, Step=1300/1450, loss=29.973419, lr=0.00025, time_each_step=0.18s, eta=3:25:28
2020-05-12 00:57:27 [INFO]	[TRAIN] Epoch=9/50, Step=1400/1450, loss=14.011029, lr=0.00025, time_each_step=0.17s, eta=3:25:10
2020-05-12 00:57:36 [INFO]	[TRAIN] Epoch 9 finished, loss=26.714897, lr=0.00025 .
2020-05-12 00:57:52 [INFO]	[TRAIN] Epoch=10/50, Step=50/1450, loss=41.974144, lr=0.00025, time_each_step=0.21s, eta=3:15:38
2020-05-12 00:58:13 [INFO]	[TRAIN] Epoch=10/50, Step=150/1450, loss=34.363152, lr=0.00025, time_each_step=0.19s, eta=3:14:53
2020-05-12 00:58:32 [INFO]	[TRAIN] Epoch=10/50, Step=250/1450, loss=17.530834, lr=0.00025, time_each_step=0.18s, eta=3:14:14
2020-05-12 00:58:50 [INFO]	[TRAIN] Epoch=10/50, Step=350/1450, loss=41.004551, lr=0.00025, time_each_step=0.17s, eta=3:13:49
2020-05-12 00:59:08 [INFO]	[TRAIN] Epoch=10/50, Step=450/1450, loss=31.083263, lr=0.00025, time_each_step=0.18s, eta=3:13:45
2020-05-12 00:59:26 [INFO]	[TRAIN] Epoch=10/50, Step=550/1450, loss=16.662138, lr=0.00025, time_each_step=0.18s, eta=3:13:20
2020-05-12 00:59:45 [INFO]	[TRAIN] Epoch=10/50, Step=650/1450, loss=35.946301, lr=0.00025, time_each_step=0.18s, eta=3:13:6
2020-05-12 01:00:02 [INFO]	[TRAIN] Epoch=10/50, Step=750/1450, loss=14.965621, lr=0.00025, time_each_step=0.18s, eta=3:12:47
2020-05-12 01:00:21 [INFO]	[TRAIN] Epoch=10/50, Step=850/1450, loss=19.819117, lr=0.00025, time_each_step=0.19s, eta=3:12:35
2020-05-12 01:00:40 [INFO]	[TRAIN] Epoch=10/50, Step=950/1450, loss=28.37118, lr=0.00025, time_each_step=0.19s, eta=3:12:18
2020-05-12 01:01:00 [INFO]	[TRAIN] Epoch=10/50, Step=1050/1450, loss=22.656309, lr=0.00025, time_each_step=0.18s, eta=3:11:53
2020-05-12 01:01:19 [INFO]	[TRAIN] Epoch=10/50, Step=1150/1450, loss=30.416676, lr=0.00025, time_each_step=0.17s, eta=3:11:33
2020-05-12 01:01:37 [INFO]	[TRAIN] Epoch=10/50, Step=1250/1450, loss=18.267155, lr=0.00025, time_each_step=0.18s, eta=3:11:17
2020-05-12 01:01:56 [INFO]	[TRAIN] Epoch=10/50, Step=1350/1450, loss=35.793907, lr=0.00025, time_each_step=0.16s, eta=3:10:57
2020-05-12 01:02:14 [INFO]	[TRAIN] Epoch=10/50, Step=1450/1450, loss=24.993143, lr=0.00025, time_each_step=0.18s, eta=3:10:41
2020-05-12 01:02:14 [INFO]	[TRAIN] Epoch 10 finished, loss=26.474905, lr=0.00025 .
2020-05-12 01:02:14 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.47it/s]


2020-05-12 01:02:23 [INFO]	[EVAL] Finished, Epoch=10, bbox_map=71.318018 .
2020-05-12 01:02:30 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 01:02:36 [INFO]	Model saved in ./yolov3_darknet53/epoch_10.
2020-05-12 01:02:36 [INFO]	Current evaluated best model in eval_dataset is epoch_10, bbox_map=71.31801810124837
2020-05-12 01:03:02 [INFO]	[TRAIN] Epoch=11/50, Step=100/1450, loss=22.71689, lr=0.00025, time_each_step=0.21s, eta=3:12:59
2020-05-12 01:03:22 [INFO]	[TRAIN] Epoch=11/50, Step=200/1450, loss=35.622566, lr=0.00025, time_each_step=0.18s, eta=3:12:4
2020-05-12 01:03:41 [INFO]	[TRAIN] Epoch=11/50, Step=300/1450, loss=26.632645, lr=0.00025, time_each_step=0.19s, eta=3:11:56
2020-05-12 01:04:00 [INFO]	[TRAIN] Epoch=11/50, Step=400/1450, loss=20.089331, lr=0.00025, time_each_step=0.18s, eta=3:11:22
2020-05-12 01:04:19 [INFO]	[TRAIN] Epoch=11/50, Step=500/1450, loss=12.813173, lr=0.00025, time_each_step=0.19s, eta=3:11:13
2020-05-12 01:04:38 [INFO]	[TRAIN] Epoch=11/50, Step=600/1450, loss=34.650238, lr=0.00025, time_each_step=0.17s, eta=3:10:39
2020-05-12 01:04:56 [INFO]	[TRAIN] Epoch=11/50, Step=700/1450, loss=18.566269, lr=0.00025, time_each_step=0.18s, eta=3:10:28
2020-05-12 01:05:15 [INFO]	[TRAIN] Epoch=11/50, Step=800/1450, loss=20.590858, lr=0.00025, time_each_step=0.18s, eta=3:10:12
2020-05-12 01:05:34 [INFO]	[TRAIN] Epoch=11/50, Step=900/1450, loss=30.902439, lr=0.00025, time_each_step=0.2s, eta=3:10:3
2020-05-12 01:05:52 [INFO]	[TRAIN] Epoch=11/50, Step=1000/1450, loss=13.327379, lr=0.00025, time_each_step=0.19s, eta=3:9:39
2020-05-12 01:06:10 [INFO]	[TRAIN] Epoch=11/50, Step=1100/1450, loss=40.206474, lr=0.00025, time_each_step=0.18s, eta=3:9:15
2020-05-12 01:06:29 [INFO]	[TRAIN] Epoch=11/50, Step=1200/1450, loss=16.10074, lr=0.00025, time_each_step=0.17s, eta=3:8:55
2020-05-12 01:06:49 [INFO]	[TRAIN] Epoch=11/50, Step=1300/1450, loss=17.673676, lr=0.00025, time_each_step=0.19s, eta=3:8:40
2020-05-12 01:07:07 [INFO]	[TRAIN] Epoch=11/50, Step=1400/1450, loss=23.855957, lr=0.00025, time_each_step=0.16s, eta=3:8:21
2020-05-12 01:07:15 [INFO]	[TRAIN] Epoch 11 finished, loss=26.682699, lr=0.00025 .
2020-05-12 01:07:30 [INFO]	[TRAIN] Epoch=12/50, Step=50/1450, loss=15.385487, lr=0.00025, time_each_step=0.22s, eta=3:9:22
2020-05-12 01:07:51 [INFO]	[TRAIN] Epoch=12/50, Step=150/1450, loss=27.300077, lr=0.00025, time_each_step=0.25s, eta=3:9:37
2020-05-12 01:08:10 [INFO]	[TRAIN] Epoch=12/50, Step=250/1450, loss=20.272087, lr=0.00025, time_each_step=0.19s, eta=3:7:57
2020-05-12 01:08:29 [INFO]	[TRAIN] Epoch=12/50, Step=350/1450, loss=15.929218, lr=0.00025, time_each_step=0.18s, eta=3:7:28
2020-05-12 01:08:48 [INFO]	[TRAIN] Epoch=12/50, Step=450/1450, loss=19.288677, lr=0.00025, time_each_step=0.17s, eta=3:7:3
2020-05-12 01:09:06 [INFO]	[TRAIN] Epoch=12/50, Step=550/1450, loss=37.526917, lr=0.00025, time_each_step=0.17s, eta=3:6:49
2020-05-12 01:09:25 [INFO]	[TRAIN] Epoch=12/50, Step=650/1450, loss=31.360168, lr=0.00025, time_each_step=0.21s, eta=3:6:56
2020-05-12 01:09:44 [INFO]	[TRAIN] Epoch=12/50, Step=750/1450, loss=38.972324, lr=0.00025, time_each_step=0.18s, eta=3:6:21
2020-05-12 01:10:03 [INFO]	[TRAIN] Epoch=12/50, Step=850/1450, loss=26.208374, lr=0.00025, time_each_step=0.19s, eta=3:6:8
2020-05-12 01:10:22 [INFO]	[TRAIN] Epoch=12/50, Step=950/1450, loss=18.663486, lr=0.00025, time_each_step=0.2s, eta=3:5:54
2020-05-12 01:10:41 [INFO]	[TRAIN] Epoch=12/50, Step=1050/1450, loss=31.786194, lr=0.00025, time_each_step=0.18s, eta=3:5:25
2020-05-12 01:11:01 [INFO]	[TRAIN] Epoch=12/50, Step=1150/1450, loss=20.192715, lr=0.00025, time_each_step=0.21s, eta=3:5:14
2020-05-12 01:11:18 [INFO]	[TRAIN] Epoch=12/50, Step=1250/1450, loss=29.347319, lr=0.00025, time_each_step=0.16s, eta=3:4:44
2020-05-12 01:11:37 [INFO]	[TRAIN] Epoch=12/50, Step=1350/1450, loss=24.03928, lr=0.00025, time_each_step=0.19s, eta=3:4:31
2020-05-12 01:11:55 [INFO]	[TRAIN] Epoch=12/50, Step=1450/1450, loss=33.036648, lr=0.00025, time_each_step=0.16s, eta=3:4:12
2020-05-12 01:11:55 [INFO]	[TRAIN] Epoch 12 finished, loss=25.410776, lr=0.00025 .
2020-05-12 01:11:55 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.48it/s]


2020-05-12 01:12:04 [INFO]	[EVAL] Finished, Epoch=12, bbox_map=70.747442 .
2020-05-12 01:12:10 [INFO]	Model saved in ./yolov3_darknet53/epoch_12.
2020-05-12 01:12:10 [INFO]	Current evaluated best model in eval_dataset is epoch_10, bbox_map=71.31801810124837
2020-05-12 01:12:34 [INFO]	[TRAIN] Epoch=13/50, Step=100/1450, loss=23.76004, lr=0.00025, time_each_step=0.21s, eta=3:1:57
2020-05-12 01:12:55 [INFO]	[TRAIN] Epoch=13/50, Step=200/1450, loss=25.657766, lr=0.00025, time_each_step=0.19s, eta=3:1:10
2020-05-12 01:13:14 [INFO]	[TRAIN] Epoch=13/50, Step=300/1450, loss=27.728527, lr=0.00025, time_each_step=0.17s, eta=3:0:34
2020-05-12 01:13:32 [INFO]	[TRAIN] Epoch=13/50, Step=400/1450, loss=34.973099, lr=0.00025, time_each_step=0.16s, eta=3:0:5
2020-05-12 01:13:51 [INFO]	[TRAIN] Epoch=13/50, Step=500/1450, loss=21.859728, lr=0.00025, time_each_step=0.16s, eta=2:59:49
2020-05-12 01:14:10 [INFO]	[TRAIN] Epoch=13/50, Step=600/1450, loss=23.702965, lr=0.00025, time_each_step=0.17s, eta=2:59:34
2020-05-12 01:14:27 [INFO]	[TRAIN] Epoch=13/50, Step=700/1450, loss=15.615895, lr=0.00025, time_each_step=0.15s, eta=2:59:9
2020-05-12 01:14:46 [INFO]	[TRAIN] Epoch=13/50, Step=800/1450, loss=33.583912, lr=0.00025, time_each_step=0.2s, eta=2:59:22
2020-05-12 01:15:05 [INFO]	[TRAIN] Epoch=13/50, Step=900/1450, loss=6.168575, lr=0.00025, time_each_step=0.2s, eta=2:59:2
2020-05-12 01:15:23 [INFO]	[TRAIN] Epoch=13/50, Step=1000/1450, loss=38.811661, lr=0.00025, time_each_step=0.17s, eta=2:58:28
2020-05-12 01:15:41 [INFO]	[TRAIN] Epoch=13/50, Step=1100/1450, loss=17.070099, lr=0.00025, time_each_step=0.17s, eta=2:58:11
2020-05-12 01:16:00 [INFO]	[TRAIN] Epoch=13/50, Step=1200/1450, loss=20.95401, lr=0.00025, time_each_step=0.17s, eta=2:57:55
2020-05-12 01:16:19 [INFO]	[TRAIN] Epoch=13/50, Step=1300/1450, loss=14.347778, lr=0.00025, time_each_step=0.18s, eta=2:57:41
2020-05-12 01:16:38 [INFO]	[TRAIN] Epoch=13/50, Step=1400/1450, loss=22.438856, lr=0.00025, time_each_step=0.18s, eta=2:57:23
2020-05-12 01:16:46 [INFO]	[TRAIN] Epoch 13 finished, loss=25.520437, lr=0.00025 .
2020-05-12 01:17:00 [INFO]	[TRAIN] Epoch=14/50, Step=50/1450, loss=15.190197, lr=0.00025, time_each_step=0.2s, eta=2:55:27
2020-05-12 01:17:21 [INFO]	[TRAIN] Epoch=14/50, Step=150/1450, loss=20.282652, lr=0.00025, time_each_step=0.2s, eta=2:54:59
2020-05-12 01:17:41 [INFO]	[TRAIN] Epoch=14/50, Step=250/1450, loss=30.231304, lr=0.00025, time_each_step=0.2s, eta=2:54:46
2020-05-12 01:18:00 [INFO]	[TRAIN] Epoch=14/50, Step=350/1450, loss=10.957151, lr=0.00025, time_each_step=0.19s, eta=2:54:11
2020-05-12 01:18:18 [INFO]	[TRAIN] Epoch=14/50, Step=450/1450, loss=32.342751, lr=0.00025, time_each_step=0.19s, eta=2:53:54
2020-05-12 01:18:37 [INFO]	[TRAIN] Epoch=14/50, Step=550/1450, loss=21.822023, lr=0.00025, time_each_step=0.2s, eta=2:53:41
2020-05-12 01:18:55 [INFO]	[TRAIN] Epoch=14/50, Step=650/1450, loss=23.08354, lr=0.00025, time_each_step=0.18s, eta=2:53:11
2020-05-12 01:19:13 [INFO]	[TRAIN] Epoch=14/50, Step=750/1450, loss=32.665821, lr=0.00025, time_each_step=0.17s, eta=2:52:41
2020-05-12 01:19:32 [INFO]	[TRAIN] Epoch=14/50, Step=850/1450, loss=30.126373, lr=0.00025, time_each_step=0.2s, eta=2:52:42
2020-05-12 01:19:51 [INFO]	[TRAIN] Epoch=14/50, Step=950/1450, loss=20.621408, lr=0.00025, time_each_step=0.17s, eta=2:52:8
2020-05-12 01:20:11 [INFO]	[TRAIN] Epoch=14/50, Step=1050/1450, loss=30.543522, lr=0.00025, time_each_step=0.2s, eta=2:52:4
2020-05-12 01:20:30 [INFO]	[TRAIN] Epoch=14/50, Step=1150/1450, loss=48.314098, lr=0.00025, time_each_step=0.18s, eta=2:51:37
2020-05-12 01:20:48 [INFO]	[TRAIN] Epoch=14/50, Step=1250/1450, loss=9.996443, lr=0.00025, time_each_step=0.18s, eta=2:51:20
2020-05-12 01:21:07 [INFO]	[TRAIN] Epoch=14/50, Step=1350/1450, loss=17.430258, lr=0.00025, time_each_step=0.17s, eta=2:51:2
2020-05-12 01:21:25 [INFO]	[TRAIN] Epoch=14/50, Step=1450/1450, loss=37.460686, lr=0.00025, time_each_step=0.17s, eta=2:50:44
2020-05-12 01:21:25 [INFO]	[TRAIN] Epoch 14 finished, loss=25.442091, lr=0.00025 .
2020-05-12 01:21:25 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.28it/s]


2020-05-12 01:21:34 [INFO]	[EVAL] Finished, Epoch=14, bbox_map=73.934009 .
2020-05-12 01:21:41 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 01:21:48 [INFO]	Model saved in ./yolov3_darknet53/epoch_14.
2020-05-12 01:21:48 [INFO]	Current evaluated best model in eval_dataset is epoch_14, bbox_map=73.93400888385267
2020-05-12 01:22:14 [INFO]	[TRAIN] Epoch=15/50, Step=100/1450, loss=23.01466, lr=0.00025, time_each_step=0.22s, eta=2:54:11
2020-05-12 01:22:35 [INFO]	[TRAIN] Epoch=15/50, Step=200/1450, loss=19.000687, lr=0.00025, time_each_step=0.2s, eta=2:53:22
2020-05-12 01:22:54 [INFO]	[TRAIN] Epoch=15/50, Step=300/1450, loss=25.403421, lr=0.00025, time_each_step=0.2s, eta=2:52:58
2020-05-12 01:23:13 [INFO]	[TRAIN] Epoch=15/50, Step=400/1450, loss=41.532547, lr=0.00025, time_each_step=0.2s, eta=2:52:43
2020-05-12 01:23:30 [INFO]	[TRAIN] Epoch=15/50, Step=500/1450, loss=47.404602, lr=0.00025, time_each_step=0.17s, eta=2:51:51
2020-05-12 01:23:50 [INFO]	[TRAIN] Epoch=15/50, Step=600/1450, loss=11.999658, lr=0.00025, time_each_step=0.18s, eta=2:51:42
2020-05-12 01:24:09 [INFO]	[TRAIN] Epoch=15/50, Step=700/1450, loss=40.133423, lr=0.00025, time_each_step=0.18s, eta=2:51:25
2020-05-12 01:24:29 [INFO]	[TRAIN] Epoch=15/50, Step=800/1450, loss=12.101052, lr=0.00025, time_each_step=0.18s, eta=2:51:6
2020-05-12 01:24:47 [INFO]	[TRAIN] Epoch=15/50, Step=900/1450, loss=31.659369, lr=0.00025, time_each_step=0.19s, eta=2:50:58
2020-05-12 01:25:06 [INFO]	[TRAIN] Epoch=15/50, Step=1000/1450, loss=13.801985, lr=0.00025, time_each_step=0.18s, eta=2:50:34
2020-05-12 01:25:24 [INFO]	[TRAIN] Epoch=15/50, Step=1100/1450, loss=22.458923, lr=0.00025, time_each_step=0.19s, eta=2:50:20
2020-05-12 01:25:43 [INFO]	[TRAIN] Epoch=15/50, Step=1200/1450, loss=19.383436, lr=0.00025, time_each_step=0.2s, eta=2:50:1
2020-05-12 01:26:02 [INFO]	[TRAIN] Epoch=15/50, Step=1300/1450, loss=25.627371, lr=0.00025, time_each_step=0.19s, eta=2:49:41
2020-05-12 01:26:21 [INFO]	[TRAIN] Epoch=15/50, Step=1400/1450, loss=26.605764, lr=0.00025, time_each_step=0.19s, eta=2:49:22
2020-05-12 01:26:29 [INFO]	[TRAIN] Epoch 15 finished, loss=25.106487, lr=0.00025 .
2020-05-12 01:26:44 [INFO]	[TRAIN] Epoch=16/50, Step=50/1450, loss=43.621284, lr=0.00025, time_each_step=0.21s, eta=2:51:27
2020-05-12 01:27:04 [INFO]	[TRAIN] Epoch=16/50, Step=150/1450, loss=33.494827, lr=0.00025, time_each_step=0.2s, eta=2:50:42
2020-05-12 01:27:24 [INFO]	[TRAIN] Epoch=16/50, Step=250/1450, loss=17.958899, lr=0.00025, time_each_step=0.2s, eta=2:50:27
2020-05-12 01:27:43 [INFO]	[TRAIN] Epoch=16/50, Step=350/1450, loss=26.470215, lr=0.00025, time_each_step=0.17s, eta=2:49:39
2020-05-12 01:28:01 [INFO]	[TRAIN] Epoch=16/50, Step=450/1450, loss=12.968124, lr=0.00025, time_each_step=0.18s, eta=2:49:24
2020-05-12 01:28:19 [INFO]	[TRAIN] Epoch=16/50, Step=550/1450, loss=40.193901, lr=0.00025, time_each_step=0.18s, eta=2:49:10
2020-05-12 01:28:38 [INFO]	[TRAIN] Epoch=16/50, Step=650/1450, loss=15.992441, lr=0.00025, time_each_step=0.17s, eta=2:48:44
2020-05-12 01:28:56 [INFO]	[TRAIN] Epoch=16/50, Step=750/1450, loss=29.607922, lr=0.00025, time_each_step=0.18s, eta=2:48:34
2020-05-12 01:29:13 [INFO]	[TRAIN] Epoch=16/50, Step=850/1450, loss=14.305863, lr=0.00025, time_each_step=0.18s, eta=2:48:16
2020-05-12 01:29:32 [INFO]	[TRAIN] Epoch=16/50, Step=950/1450, loss=33.822937, lr=0.00025, time_each_step=0.19s, eta=2:48:3
2020-05-12 01:29:52 [INFO]	[TRAIN] Epoch=16/50, Step=1050/1450, loss=19.424892, lr=0.00025, time_each_step=0.18s, eta=2:47:38
2020-05-12 01:30:11 [INFO]	[TRAIN] Epoch=16/50, Step=1150/1450, loss=52.418221, lr=0.00025, time_each_step=0.19s, eta=2:47:25
2020-05-12 01:30:30 [INFO]	[TRAIN] Epoch=16/50, Step=1250/1450, loss=12.282257, lr=0.00025, time_each_step=0.17s, eta=2:47:2
2020-05-12 01:30:50 [INFO]	[TRAIN] Epoch=16/50, Step=1350/1450, loss=26.503342, lr=0.00025, time_each_step=0.18s, eta=2:46:46
2020-05-12 01:31:08 [INFO]	[TRAIN] Epoch=16/50, Step=1450/1450, loss=16.981478, lr=0.00025, time_each_step=0.16s, eta=2:46:28
2020-05-12 01:31:08 [INFO]	[TRAIN] Epoch 16 finished, loss=24.997179, lr=0.00025 .
2020-05-12 01:31:08 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.48it/s]


2020-05-12 01:31:17 [INFO]	[EVAL] Finished, Epoch=16, bbox_map=73.499811 .
2020-05-12 01:31:24 [INFO]	Model saved in ./yolov3_darknet53/epoch_16.
2020-05-12 01:31:24 [INFO]	Current evaluated best model in eval_dataset is epoch_14, bbox_map=73.93400888385267
2020-05-12 01:31:49 [INFO]	[TRAIN] Epoch=17/50, Step=100/1450, loss=25.134901, lr=0.00025, time_each_step=0.23s, eta=2:42:40
2020-05-12 01:32:10 [INFO]	[TRAIN] Epoch=17/50, Step=200/1450, loss=38.919968, lr=0.00025, time_each_step=0.21s, eta=2:41:57
2020-05-12 01:32:29 [INFO]	[TRAIN] Epoch=17/50, Step=300/1450, loss=25.309914, lr=0.00025, time_each_step=0.19s, eta=2:41:15
2020-05-12 01:32:47 [INFO]	[TRAIN] Epoch=17/50, Step=400/1450, loss=18.153208, lr=0.00025, time_each_step=0.16s, eta=2:40:23
2020-05-12 01:33:05 [INFO]	[TRAIN] Epoch=17/50, Step=500/1450, loss=14.649856, lr=0.00025, time_each_step=0.2s, eta=2:40:45
2020-05-12 01:33:24 [INFO]	[TRAIN] Epoch=17/50, Step=600/1450, loss=28.38213, lr=0.00025, time_each_step=0.2s, eta=2:40:26
2020-05-12 01:33:43 [INFO]	[TRAIN] Epoch=17/50, Step=700/1450, loss=20.092869, lr=0.00025, time_each_step=0.19s, eta=2:39:58
2020-05-12 01:34:01 [INFO]	[TRAIN] Epoch=17/50, Step=800/1450, loss=24.581184, lr=0.00025, time_each_step=0.18s, eta=2:39:32
2020-05-12 01:34:21 [INFO]	[TRAIN] Epoch=17/50, Step=900/1450, loss=5.412077, lr=0.00025, time_each_step=0.18s, eta=2:39:15
2020-05-12 01:34:38 [INFO]	[TRAIN] Epoch=17/50, Step=1000/1450, loss=21.157881, lr=0.00025, time_each_step=0.18s, eta=2:38:53
2020-05-12 01:34:58 [INFO]	[TRAIN] Epoch=17/50, Step=1100/1450, loss=18.365395, lr=0.00025, time_each_step=0.18s, eta=2:38:39
2020-05-12 01:35:16 [INFO]	[TRAIN] Epoch=17/50, Step=1200/1450, loss=33.122849, lr=0.00025, time_each_step=0.19s, eta=2:38:22
2020-05-12 01:35:34 [INFO]	[TRAIN] Epoch=17/50, Step=1300/1450, loss=22.649439, lr=0.00025, time_each_step=0.19s, eta=2:38:2
2020-05-12 01:35:52 [INFO]	[TRAIN] Epoch=17/50, Step=1400/1450, loss=10.306547, lr=0.00025, time_each_step=0.18s, eta=2:37:43
2020-05-12 01:36:02 [INFO]	[TRAIN] Epoch 17 finished, loss=24.705013, lr=0.00025 .
2020-05-12 01:36:17 [INFO]	[TRAIN] Epoch=18/50, Step=50/1450, loss=35.590973, lr=0.00025, time_each_step=0.2s, eta=2:37:53
2020-05-12 01:36:38 [INFO]	[TRAIN] Epoch=18/50, Step=150/1450, loss=30.777203, lr=0.00025, time_each_step=0.22s, eta=2:38:5
2020-05-12 01:36:58 [INFO]	[TRAIN] Epoch=18/50, Step=250/1450, loss=18.79167, lr=0.00025, time_each_step=0.18s, eta=2:36:54
2020-05-12 01:37:17 [INFO]	[TRAIN] Epoch=18/50, Step=350/1450, loss=19.863358, lr=0.00025, time_each_step=0.2s, eta=2:36:49
2020-05-12 01:37:34 [INFO]	[TRAIN] Epoch=18/50, Step=450/1450, loss=28.85471, lr=0.00025, time_each_step=0.19s, eta=2:36:20
2020-05-12 01:37:53 [INFO]	[TRAIN] Epoch=18/50, Step=550/1450, loss=37.611092, lr=0.00025, time_each_step=0.18s, eta=2:35:52
2020-05-12 01:38:11 [INFO]	[TRAIN] Epoch=18/50, Step=650/1450, loss=16.952391, lr=0.00025, time_each_step=0.18s, eta=2:35:34
2020-05-12 01:38:31 [INFO]	[TRAIN] Epoch=18/50, Step=750/1450, loss=33.598862, lr=0.00025, time_each_step=0.19s, eta=2:35:25
2020-05-12 01:38:49 [INFO]	[TRAIN] Epoch=18/50, Step=850/1450, loss=20.80077, lr=0.00025, time_each_step=0.18s, eta=2:34:58
2020-05-12 01:39:08 [INFO]	[TRAIN] Epoch=18/50, Step=950/1450, loss=14.536404, lr=0.00025, time_each_step=0.21s, eta=2:34:58
2020-05-12 01:39:26 [INFO]	[TRAIN] Epoch=18/50, Step=1050/1450, loss=9.760467, lr=0.00025, time_each_step=0.17s, eta=2:34:22
2020-05-12 01:39:44 [INFO]	[TRAIN] Epoch=18/50, Step=1150/1450, loss=16.067131, lr=0.00025, time_each_step=0.19s, eta=2:34:10
2020-05-12 01:40:03 [INFO]	[TRAIN] Epoch=18/50, Step=1250/1450, loss=26.680124, lr=0.00025, time_each_step=0.17s, eta=2:33:47
2020-05-12 01:40:22 [INFO]	[TRAIN] Epoch=18/50, Step=1350/1450, loss=24.857529, lr=0.00025, time_each_step=0.21s, eta=2:33:34
2020-05-12 01:40:39 [INFO]	[TRAIN] Epoch=18/50, Step=1450/1450, loss=24.777607, lr=0.00025, time_each_step=0.18s, eta=2:33:13
2020-05-12 01:40:39 [INFO]	[TRAIN] Epoch 18 finished, loss=24.351097, lr=0.00025 .
2020-05-12 01:40:39 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.11it/s]


2020-05-12 01:40:49 [INFO]	[EVAL] Finished, Epoch=18, bbox_map=73.803471 .
2020-05-12 01:40:56 [INFO]	Model saved in ./yolov3_darknet53/epoch_18.
2020-05-12 01:40:56 [INFO]	Current evaluated best model in eval_dataset is epoch_14, bbox_map=73.93400888385267
2020-05-12 01:41:25 [INFO]	[TRAIN] Epoch=19/50, Step=100/1450, loss=18.633652, lr=0.00025, time_each_step=0.24s, eta=2:32:41
2020-05-12 01:41:46 [INFO]	[TRAIN] Epoch=19/50, Step=200/1450, loss=28.138533, lr=0.00025, time_each_step=0.2s, eta=2:31:35
2020-05-12 01:42:05 [INFO]	[TRAIN] Epoch=19/50, Step=300/1450, loss=31.635338, lr=0.00025, time_each_step=0.2s, eta=2:31:8
2020-05-12 01:42:22 [INFO]	[TRAIN] Epoch=19/50, Step=400/1450, loss=6.926927, lr=0.00025, time_each_step=0.18s, eta=2:30:31
2020-05-12 01:42:41 [INFO]	[TRAIN] Epoch=19/50, Step=500/1450, loss=33.946648, lr=0.00025, time_each_step=0.2s, eta=2:30:30
2020-05-12 01:42:59 [INFO]	[TRAIN] Epoch=19/50, Step=600/1450, loss=37.942753, lr=0.00025, time_each_step=0.17s, eta=2:29:47
2020-05-12 01:43:18 [INFO]	[TRAIN] Epoch=19/50, Step=700/1450, loss=30.471869, lr=0.00025, time_each_step=0.19s, eta=2:29:42
2020-05-12 01:43:36 [INFO]	[TRAIN] Epoch=19/50, Step=800/1450, loss=37.609875, lr=0.00025, time_each_step=0.18s, eta=2:29:22
2020-05-12 01:43:55 [INFO]	[TRAIN] Epoch=19/50, Step=900/1450, loss=26.041162, lr=0.00025, time_each_step=0.2s, eta=2:29:11
2020-05-12 01:44:15 [INFO]	[TRAIN] Epoch=19/50, Step=1000/1450, loss=24.547321, lr=0.00025, time_each_step=0.21s, eta=2:28:57
2020-05-12 01:44:34 [INFO]	[TRAIN] Epoch=19/50, Step=1100/1450, loss=12.317322, lr=0.00025, time_each_step=0.2s, eta=2:28:33
2020-05-12 01:44:52 [INFO]	[TRAIN] Epoch=19/50, Step=1200/1450, loss=22.056997, lr=0.00025, time_each_step=0.18s, eta=2:28:8
2020-05-12 01:45:11 [INFO]	[TRAIN] Epoch=19/50, Step=1300/1450, loss=29.626392, lr=0.00025, time_each_step=0.18s, eta=2:27:51
2020-05-12 01:45:29 [INFO]	[TRAIN] Epoch=19/50, Step=1400/1450, loss=29.005909, lr=0.00025, time_each_step=0.21s, eta=2:27:33
2020-05-12 01:45:38 [INFO]	[TRAIN] Epoch 19 finished, loss=24.305862, lr=0.00025 .
2020-05-12 01:45:52 [INFO]	[TRAIN] Epoch=20/50, Step=50/1450, loss=19.231194, lr=0.00025, time_each_step=0.22s, eta=2:30:44
2020-05-12 01:46:14 [INFO]	[TRAIN] Epoch=20/50, Step=150/1450, loss=15.817843, lr=0.00025, time_each_step=0.21s, eta=2:30:16
2020-05-12 01:46:33 [INFO]	[TRAIN] Epoch=20/50, Step=250/1450, loss=30.077293, lr=0.00025, time_each_step=0.19s, eta=2:29:24
2020-05-12 01:46:52 [INFO]	[TRAIN] Epoch=20/50, Step=350/1450, loss=42.497589, lr=0.00025, time_each_step=0.18s, eta=2:29:5
2020-05-12 01:47:10 [INFO]	[TRAIN] Epoch=20/50, Step=450/1450, loss=29.436213, lr=0.00025, time_each_step=0.18s, eta=2:28:47
2020-05-12 01:47:29 [INFO]	[TRAIN] Epoch=20/50, Step=550/1450, loss=11.667315, lr=0.00025, time_each_step=0.18s, eta=2:28:27
2020-05-12 01:47:47 [INFO]	[TRAIN] Epoch=20/50, Step=650/1450, loss=20.82803, lr=0.00025, time_each_step=0.19s, eta=2:28:15
2020-05-12 01:48:06 [INFO]	[TRAIN] Epoch=20/50, Step=750/1450, loss=7.040365, lr=0.00025, time_each_step=0.19s, eta=2:27:52
2020-05-12 01:48:25 [INFO]	[TRAIN] Epoch=20/50, Step=850/1450, loss=27.550737, lr=0.00025, time_each_step=0.18s, eta=2:27:33
2020-05-12 01:48:43 [INFO]	[TRAIN] Epoch=20/50, Step=950/1450, loss=20.090599, lr=0.00025, time_each_step=0.19s, eta=2:27:16
2020-05-12 01:49:01 [INFO]	[TRAIN] Epoch=20/50, Step=1050/1450, loss=46.837997, lr=0.00025, time_each_step=0.2s, eta=2:27:1
2020-05-12 01:49:21 [INFO]	[TRAIN] Epoch=20/50, Step=1150/1450, loss=23.094385, lr=0.00025, time_each_step=0.21s, eta=2:26:44
2020-05-12 01:49:40 [INFO]	[TRAIN] Epoch=20/50, Step=1250/1450, loss=10.857461, lr=0.00025, time_each_step=0.19s, eta=2:26:20
2020-05-12 01:49:58 [INFO]	[TRAIN] Epoch=20/50, Step=1350/1450, loss=26.71772, lr=0.00025, time_each_step=0.18s, eta=2:26:0
2020-05-12 01:50:16 [INFO]	[TRAIN] Epoch=20/50, Step=1450/1450, loss=37.14072, lr=0.00025, time_each_step=0.19s, eta=2:25:42
2020-05-12 01:50:16 [INFO]	[TRAIN] Epoch 20 finished, loss=23.831772, lr=0.00025 .
2020-05-12 01:50:16 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.26it/s]


2020-05-12 01:50:25 [INFO]	[EVAL] Finished, Epoch=20, bbox_map=77.908852 .
2020-05-12 01:50:32 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 01:50:38 [INFO]	Model saved in ./yolov3_darknet53/epoch_20.
2020-05-12 01:50:38 [INFO]	Current evaluated best model in eval_dataset is epoch_20, bbox_map=77.90885240182126
2020-05-12 01:51:05 [INFO]	[TRAIN] Epoch=21/50, Step=100/1450, loss=35.97802, lr=2.5e-05, time_each_step=0.19s, eta=2:24:4
2020-05-12 01:51:25 [INFO]	[TRAIN] Epoch=21/50, Step=200/1450, loss=27.912716, lr=2.5e-05, time_each_step=0.22s, eta=2:24:20
2020-05-12 01:51:44 [INFO]	[TRAIN] Epoch=21/50, Step=300/1450, loss=23.107759, lr=2.5e-05, time_each_step=0.2s, eta=2:23:34
2020-05-12 01:52:03 [INFO]	[TRAIN] Epoch=21/50, Step=400/1450, loss=28.508223, lr=2.5e-05, time_each_step=0.2s, eta=2:23:11
2020-05-12 01:52:22 [INFO]	[TRAIN] Epoch=21/50, Step=500/1450, loss=4.536776, lr=2.5e-05, time_each_step=0.18s, eta=2:22:39
2020-05-12 01:52:39 [INFO]	[TRAIN] Epoch=21/50, Step=600/1450, loss=24.592009, lr=2.5e-05, time_each_step=0.18s, eta=2:22:15
2020-05-12 01:52:58 [INFO]	[TRAIN] Epoch=21/50, Step=700/1450, loss=17.883656, lr=2.5e-05, time_each_step=0.18s, eta=2:22:0
2020-05-12 01:53:17 [INFO]	[TRAIN] Epoch=21/50, Step=800/1450, loss=12.304498, lr=2.5e-05, time_each_step=0.18s, eta=2:21:41
2020-05-12 01:53:36 [INFO]	[TRAIN] Epoch=21/50, Step=900/1450, loss=12.572254, lr=2.5e-05, time_each_step=0.19s, eta=2:21:28
2020-05-12 01:53:54 [INFO]	[TRAIN] Epoch=21/50, Step=1000/1450, loss=19.589005, lr=2.5e-05, time_each_step=0.17s, eta=2:21:0
2020-05-12 01:54:14 [INFO]	[TRAIN] Epoch=21/50, Step=1100/1450, loss=22.782766, lr=2.5e-05, time_each_step=0.18s, eta=2:20:48
2020-05-12 01:54:33 [INFO]	[TRAIN] Epoch=21/50, Step=1200/1450, loss=13.50202, lr=2.5e-05, time_each_step=0.2s, eta=2:20:33
2020-05-12 01:54:52 [INFO]	[TRAIN] Epoch=21/50, Step=1300/1450, loss=14.076258, lr=2.5e-05, time_each_step=0.16s, eta=2:20:7
2020-05-12 01:55:08 [INFO]	[TRAIN] Epoch=21/50, Step=1400/1450, loss=55.139687, lr=2.5e-05, time_each_step=0.15s, eta=2:19:51
2020-05-12 01:55:17 [INFO]	[TRAIN] Epoch 21 finished, loss=23.07056, lr=2.5e-05 .
2020-05-12 01:55:31 [INFO]	[TRAIN] Epoch=22/50, Step=50/1450, loss=35.863976, lr=2.5e-05, time_each_step=0.23s, eta=2:20:54
2020-05-12 01:55:52 [INFO]	[TRAIN] Epoch=22/50, Step=150/1450, loss=26.323734, lr=2.5e-05, time_each_step=0.19s, eta=2:19:48
2020-05-12 01:56:12 [INFO]	[TRAIN] Epoch=22/50, Step=250/1450, loss=24.015804, lr=2.5e-05, time_each_step=0.17s, eta=2:19:6
2020-05-12 01:56:31 [INFO]	[TRAIN] Epoch=22/50, Step=350/1450, loss=21.399973, lr=2.5e-05, time_each_step=0.18s, eta=2:18:56
2020-05-12 01:56:50 [INFO]	[TRAIN] Epoch=22/50, Step=450/1450, loss=20.258718, lr=2.5e-05, time_each_step=0.19s, eta=2:18:43
2020-05-12 01:57:09 [INFO]	[TRAIN] Epoch=22/50, Step=550/1450, loss=12.511133, lr=2.5e-05, time_each_step=0.17s, eta=2:18:13
2020-05-12 01:57:27 [INFO]	[TRAIN] Epoch=22/50, Step=650/1450, loss=13.98421, lr=2.5e-05, time_each_step=0.2s, eta=2:18:17
2020-05-12 01:57:46 [INFO]	[TRAIN] Epoch=22/50, Step=750/1450, loss=20.979887, lr=2.5e-05, time_each_step=0.18s, eta=2:17:44
2020-05-12 01:58:04 [INFO]	[TRAIN] Epoch=22/50, Step=850/1450, loss=19.130692, lr=2.5e-05, time_each_step=0.2s, eta=2:17:38
2020-05-12 01:58:22 [INFO]	[TRAIN] Epoch=22/50, Step=950/1450, loss=29.146282, lr=2.5e-05, time_each_step=0.2s, eta=2:17:18
2020-05-12 01:58:41 [INFO]	[TRAIN] Epoch=22/50, Step=1050/1450, loss=21.504642, lr=2.5e-05, time_each_step=0.19s, eta=2:16:54
2020-05-12 01:58:59 [INFO]	[TRAIN] Epoch=22/50, Step=1150/1450, loss=12.918876, lr=2.5e-05, time_each_step=0.21s, eta=2:16:40
2020-05-12 01:59:18 [INFO]	[TRAIN] Epoch=22/50, Step=1250/1450, loss=19.171429, lr=2.5e-05, time_each_step=0.18s, eta=2:16:13
2020-05-12 01:59:37 [INFO]	[TRAIN] Epoch=22/50, Step=1350/1450, loss=17.216267, lr=2.5e-05, time_each_step=0.19s, eta=2:15:56
2020-05-12 01:59:54 [INFO]	[TRAIN] Epoch=22/50, Step=1450/1450, loss=30.333439, lr=2.5e-05, time_each_step=0.16s, eta=2:15:37
2020-05-12 01:59:54 [INFO]	[TRAIN] Epoch 22 finished, loss=22.464254, lr=2.5e-05 .
2020-05-12 01:59:54 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.33it/s]


2020-05-12 02:00:03 [INFO]	[EVAL] Finished, Epoch=22, bbox_map=79.515381 .
2020-05-12 02:00:09 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 02:00:15 [INFO]	Model saved in ./yolov3_darknet53/epoch_22.
2020-05-12 02:00:15 [INFO]	Current evaluated best model in eval_dataset is epoch_22, bbox_map=79.51538100549028
2020-05-12 02:00:41 [INFO]	[TRAIN] Epoch=23/50, Step=100/1450, loss=35.668316, lr=2.5e-05, time_each_step=0.22s, eta=2:14:30
2020-05-12 02:01:02 [INFO]	[TRAIN] Epoch=23/50, Step=200/1450, loss=16.746168, lr=2.5e-05, time_each_step=0.21s, eta=2:14:0
2020-05-12 02:01:21 [INFO]	[TRAIN] Epoch=23/50, Step=300/1450, loss=22.506824, lr=2.5e-05, time_each_step=0.2s, eta=2:13:34
2020-05-12 02:01:41 [INFO]	[TRAIN] Epoch=23/50, Step=400/1450, loss=12.801514, lr=2.5e-05, time_each_step=0.19s, eta=2:13:1
2020-05-12 02:01:58 [INFO]	[TRAIN] Epoch=23/50, Step=500/1450, loss=19.21419, lr=2.5e-05, time_each_step=0.17s, eta=2:12:17
2020-05-12 02:02:17 [INFO]	[TRAIN] Epoch=23/50, Step=600/1450, loss=27.119461, lr=2.5e-05, time_each_step=0.19s, eta=2:12:17
2020-05-12 02:02:35 [INFO]	[TRAIN] Epoch=23/50, Step=700/1450, loss=60.079838, lr=2.5e-05, time_each_step=0.16s, eta=2:11:42
2020-05-12 02:02:53 [INFO]	[TRAIN] Epoch=23/50, Step=800/1450, loss=23.723955, lr=2.5e-05, time_each_step=0.17s, eta=2:11:33
2020-05-12 02:03:12 [INFO]	[TRAIN] Epoch=23/50, Step=900/1450, loss=15.735902, lr=2.5e-05, time_each_step=0.16s, eta=2:11:7
2020-05-12 02:03:31 [INFO]	[TRAIN] Epoch=23/50, Step=1000/1450, loss=25.263203, lr=2.5e-05, time_each_step=0.19s, eta=2:11:7
2020-05-12 02:03:50 [INFO]	[TRAIN] Epoch=23/50, Step=1100/1450, loss=4.170611, lr=2.5e-05, time_each_step=0.21s, eta=2:10:53
2020-05-12 02:04:09 [INFO]	[TRAIN] Epoch=23/50, Step=1200/1450, loss=38.921318, lr=2.5e-05, time_each_step=0.18s, eta=2:10:23
2020-05-12 02:04:27 [INFO]	[TRAIN] Epoch=23/50, Step=1300/1450, loss=30.788828, lr=2.5e-05, time_each_step=0.2s, eta=2:10:9
2020-05-12 02:04:46 [INFO]	[TRAIN] Epoch=23/50, Step=1400/1450, loss=23.29858, lr=2.5e-05, time_each_step=0.19s, eta=2:9:48
2020-05-12 02:04:54 [INFO]	[TRAIN] Epoch 23 finished, loss=22.108828, lr=2.5e-05 .
2020-05-12 02:05:09 [INFO]	[TRAIN] Epoch=24/50, Step=50/1450, loss=12.129299, lr=2.5e-05, time_each_step=0.23s, eta=2:11:4
2020-05-12 02:05:29 [INFO]	[TRAIN] Epoch=24/50, Step=150/1450, loss=21.170732, lr=2.5e-05, time_each_step=0.2s, eta=2:10:3
2020-05-12 02:05:50 [INFO]	[TRAIN] Epoch=24/50, Step=250/1450, loss=27.7738, lr=2.5e-05, time_each_step=0.18s, eta=2:9:22
2020-05-12 02:06:09 [INFO]	[TRAIN] Epoch=24/50, Step=350/1450, loss=22.226646, lr=2.5e-05, time_each_step=0.2s, eta=2:9:24
2020-05-12 02:06:27 [INFO]	[TRAIN] Epoch=24/50, Step=450/1450, loss=36.725788, lr=2.5e-05, time_each_step=0.2s, eta=2:9:3
2020-05-12 02:06:45 [INFO]	[TRAIN] Epoch=24/50, Step=550/1450, loss=13.698137, lr=2.5e-05, time_each_step=0.21s, eta=2:8:53
2020-05-12 02:07:04 [INFO]	[TRAIN] Epoch=24/50, Step=650/1450, loss=12.549566, lr=2.5e-05, time_each_step=0.19s, eta=2:8:18
2020-05-12 02:07:22 [INFO]	[TRAIN] Epoch=24/50, Step=750/1450, loss=19.232582, lr=2.5e-05, time_each_step=0.15s, eta=2:7:35
2020-05-12 02:07:41 [INFO]	[TRAIN] Epoch=24/50, Step=850/1450, loss=12.030625, lr=2.5e-05, time_each_step=0.21s, eta=2:7:54
2020-05-12 02:08:00 [INFO]	[TRAIN] Epoch=24/50, Step=950/1450, loss=19.715385, lr=2.5e-05, time_each_step=0.19s, eta=2:7:23
2020-05-12 02:08:19 [INFO]	[TRAIN] Epoch=24/50, Step=1050/1450, loss=17.474789, lr=2.5e-05, time_each_step=0.2s, eta=2:7:6
2020-05-12 02:08:37 [INFO]	[TRAIN] Epoch=24/50, Step=1150/1450, loss=16.120373, lr=2.5e-05, time_each_step=0.19s, eta=2:6:42
2020-05-12 02:08:56 [INFO]	[TRAIN] Epoch=24/50, Step=1250/1450, loss=9.443489, lr=2.5e-05, time_each_step=0.21s, eta=2:6:28
2020-05-12 02:09:14 [INFO]	[TRAIN] Epoch=24/50, Step=1350/1450, loss=23.913132, lr=2.5e-05, time_each_step=0.19s, eta=2:6:6
2020-05-12 02:09:31 [INFO]	[TRAIN] Epoch=24/50, Step=1450/1450, loss=32.641159, lr=2.5e-05, time_each_step=0.16s, eta=2:5:47
2020-05-12 02:09:31 [INFO]	[TRAIN] Epoch 24 finished, loss=22.1607, lr=2.5e-05 .
2020-05-12 02:09:31 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.49it/s]


2020-05-12 02:09:40 [INFO]	[EVAL] Finished, Epoch=24, bbox_map=80.21346 .
2020-05-12 02:09:46 [INFO]	Model saved in ./yolov3_darknet53/best_model.
2020-05-12 02:09:52 [INFO]	Model saved in ./yolov3_darknet53/epoch_24.
2020-05-12 02:09:52 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 02:10:17 [INFO]	[TRAIN] Epoch=25/50, Step=100/1450, loss=16.092857, lr=2.5e-05, time_each_step=0.2s, eta=2:4:29
2020-05-12 02:10:39 [INFO]	[TRAIN] Epoch=25/50, Step=200/1450, loss=18.241177, lr=2.5e-05, time_each_step=0.19s, eta=2:3:55
2020-05-12 02:10:57 [INFO]	[TRAIN] Epoch=25/50, Step=300/1450, loss=40.235725, lr=2.5e-05, time_each_step=0.17s, eta=2:3:19
2020-05-12 02:11:16 [INFO]	[TRAIN] Epoch=25/50, Step=400/1450, loss=19.586573, lr=2.5e-05, time_each_step=0.18s, eta=2:3:6
2020-05-12 02:11:33 [INFO]	[TRAIN] Epoch=25/50, Step=500/1450, loss=36.106319, lr=2.5e-05, time_each_step=0.18s, eta=2:2:49
2020-05-12 02:11:51 [INFO]	[TRAIN] Epoch=25/50, Step=600/1450, loss=32.651985, lr=2.5e-05, time_each_step=0.19s, eta=2:2:36
2020-05-12 02:12:10 [INFO]	[TRAIN] Epoch=25/50, Step=700/1450, loss=34.536945, lr=2.5e-05, time_each_step=0.17s, eta=2:2:4
2020-05-12 02:12:28 [INFO]	[TRAIN] Epoch=25/50, Step=800/1450, loss=7.772592, lr=2.5e-05, time_each_step=0.19s, eta=2:2:1
2020-05-12 02:12:47 [INFO]	[TRAIN] Epoch=25/50, Step=900/1450, loss=18.136372, lr=2.5e-05, time_each_step=0.17s, eta=2:1:31
2020-05-12 02:13:06 [INFO]	[TRAIN] Epoch=25/50, Step=1000/1450, loss=16.82049, lr=2.5e-05, time_each_step=0.19s, eta=2:1:23
2020-05-12 02:13:25 [INFO]	[TRAIN] Epoch=25/50, Step=1100/1450, loss=2.785939, lr=2.5e-05, time_each_step=0.17s, eta=2:0:56
2020-05-12 02:13:43 [INFO]	[TRAIN] Epoch=25/50, Step=1200/1450, loss=40.377586, lr=2.5e-05, time_each_step=0.19s, eta=2:0:45
2020-05-12 02:14:01 [INFO]	[TRAIN] Epoch=25/50, Step=1300/1450, loss=11.131117, lr=2.5e-05, time_each_step=0.18s, eta=2:0:24
2020-05-12 02:14:20 [INFO]	[TRAIN] Epoch=25/50, Step=1400/1450, loss=23.129675, lr=2.5e-05, time_each_step=0.19s, eta=2:0:7
2020-05-12 02:14:28 [INFO]	[TRAIN] Epoch 25 finished, loss=22.099974, lr=2.5e-05 .
2020-05-12 02:14:42 [INFO]	[TRAIN] Epoch=26/50, Step=50/1450, loss=30.884216, lr=2.5e-05, time_each_step=0.22s, eta=2:0:5
2020-05-12 02:15:04 [INFO]	[TRAIN] Epoch=26/50, Step=150/1450, loss=17.483894, lr=2.5e-05, time_each_step=0.22s, eta=1:59:36
2020-05-12 02:15:24 [INFO]	[TRAIN] Epoch=26/50, Step=250/1450, loss=30.291964, lr=2.5e-05, time_each_step=0.18s, eta=1:58:27
2020-05-12 02:15:43 [INFO]	[TRAIN] Epoch=26/50, Step=350/1450, loss=28.799549, lr=2.5e-05, time_each_step=0.18s, eta=1:58:9
2020-05-12 02:16:02 [INFO]	[TRAIN] Epoch=26/50, Step=450/1450, loss=23.897568, lr=2.5e-05, time_each_step=0.17s, eta=1:57:48
2020-05-12 02:16:20 [INFO]	[TRAIN] Epoch=26/50, Step=550/1450, loss=24.317532, lr=2.5e-05, time_each_step=0.17s, eta=1:57:27
2020-05-12 02:16:39 [INFO]	[TRAIN] Epoch=26/50, Step=650/1450, loss=20.329535, lr=2.5e-05, time_each_step=0.19s, eta=1:57:23
2020-05-12 02:16:58 [INFO]	[TRAIN] Epoch=26/50, Step=750/1450, loss=17.35203, lr=2.5e-05, time_each_step=0.19s, eta=1:57:8
2020-05-12 02:17:16 [INFO]	[TRAIN] Epoch=26/50, Step=850/1450, loss=14.786329, lr=2.5e-05, time_each_step=0.19s, eta=1:56:45
2020-05-12 02:17:34 [INFO]	[TRAIN] Epoch=26/50, Step=950/1450, loss=10.752961, lr=2.5e-05, time_each_step=0.18s, eta=1:56:25
2020-05-12 02:17:53 [INFO]	[TRAIN] Epoch=26/50, Step=1050/1450, loss=27.113464, lr=2.5e-05, time_each_step=0.2s, eta=1:56:15
2020-05-12 02:18:12 [INFO]	[TRAIN] Epoch=26/50, Step=1150/1450, loss=11.513044, lr=2.5e-05, time_each_step=0.2s, eta=1:55:52
2020-05-12 02:18:31 [INFO]	[TRAIN] Epoch=26/50, Step=1250/1450, loss=13.129757, lr=2.5e-05, time_each_step=0.2s, eta=1:55:33
2020-05-12 02:18:50 [INFO]	[TRAIN] Epoch=26/50, Step=1350/1450, loss=22.263775, lr=2.5e-05, time_each_step=0.19s, eta=1:55:12
2020-05-12 02:19:07 [INFO]	[TRAIN] Epoch=26/50, Step=1450/1450, loss=35.195259, lr=2.5e-05, time_each_step=0.17s, eta=1:54:53
2020-05-12 02:19:07 [INFO]	[TRAIN] Epoch 26 finished, loss=22.031031, lr=2.5e-05 .
2020-05-12 02:19:07 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.09it/s]


2020-05-12 02:19:18 [INFO]	[EVAL] Finished, Epoch=26, bbox_map=79.864762 .
2020-05-12 02:19:23 [INFO]	Model saved in ./yolov3_darknet53/epoch_26.
2020-05-12 02:19:23 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 02:19:48 [INFO]	[TRAIN] Epoch=27/50, Step=100/1450, loss=20.414751, lr=2.5e-05, time_each_step=0.22s, eta=1:55:12
2020-05-12 02:20:08 [INFO]	[TRAIN] Epoch=27/50, Step=200/1450, loss=13.312222, lr=2.5e-05, time_each_step=0.23s, eta=1:55:6
2020-05-12 02:20:28 [INFO]	[TRAIN] Epoch=27/50, Step=300/1450, loss=31.537374, lr=2.5e-05, time_each_step=0.2s, eta=1:54:16
2020-05-12 02:20:46 [INFO]	[TRAIN] Epoch=27/50, Step=400/1450, loss=31.039986, lr=2.5e-05, time_each_step=0.17s, eta=1:53:18
2020-05-12 02:21:04 [INFO]	[TRAIN] Epoch=27/50, Step=500/1450, loss=23.091057, lr=2.5e-05, time_each_step=0.18s, eta=1:53:15
2020-05-12 02:21:22 [INFO]	[TRAIN] Epoch=27/50, Step=600/1450, loss=10.127804, lr=2.5e-05, time_each_step=0.16s, eta=1:52:40
2020-05-12 02:21:41 [INFO]	[TRAIN] Epoch=27/50, Step=700/1450, loss=12.622188, lr=2.5e-05, time_each_step=0.17s, eta=1:52:33
2020-05-12 02:22:00 [INFO]	[TRAIN] Epoch=27/50, Step=800/1450, loss=20.227074, lr=2.5e-05, time_each_step=0.19s, eta=1:52:26
2020-05-12 02:22:19 [INFO]	[TRAIN] Epoch=27/50, Step=900/1450, loss=22.412851, lr=2.5e-05, time_each_step=0.19s, eta=1:52:7
2020-05-12 02:22:38 [INFO]	[TRAIN] Epoch=27/50, Step=1000/1450, loss=35.109146, lr=2.5e-05, time_each_step=0.2s, eta=1:51:52
2020-05-12 02:22:56 [INFO]	[TRAIN] Epoch=27/50, Step=1100/1450, loss=44.108696, lr=2.5e-05, time_each_step=0.18s, eta=1:51:24
2020-05-12 02:23:14 [INFO]	[TRAIN] Epoch=27/50, Step=1200/1450, loss=27.136515, lr=2.5e-05, time_each_step=0.16s, eta=1:51:1
2020-05-12 02:23:33 [INFO]	[TRAIN] Epoch=27/50, Step=1300/1450, loss=20.65802, lr=2.5e-05, time_each_step=0.19s, eta=1:50:51
2020-05-12 02:23:51 [INFO]	[TRAIN] Epoch=27/50, Step=1400/1450, loss=28.855719, lr=2.5e-05, time_each_step=0.21s, eta=1:50:32
2020-05-12 02:23:59 [INFO]	[TRAIN] Epoch 27 finished, loss=22.162174, lr=2.5e-05 .
2020-05-12 02:24:14 [INFO]	[TRAIN] Epoch=28/50, Step=50/1450, loss=10.886723, lr=2.5e-05, time_each_step=0.2s, eta=1:48:52
2020-05-12 02:24:36 [INFO]	[TRAIN] Epoch=28/50, Step=150/1450, loss=18.961308, lr=2.5e-05, time_each_step=0.2s, eta=1:48:42
2020-05-12 02:24:55 [INFO]	[TRAIN] Epoch=28/50, Step=250/1450, loss=16.824909, lr=2.5e-05, time_each_step=0.18s, eta=1:47:47
2020-05-12 02:25:13 [INFO]	[TRAIN] Epoch=28/50, Step=350/1450, loss=20.666937, lr=2.5e-05, time_each_step=0.17s, eta=1:47:25
2020-05-12 02:25:32 [INFO]	[TRAIN] Epoch=28/50, Step=450/1450, loss=28.822645, lr=2.5e-05, time_each_step=0.16s, eta=1:46:54
2020-05-12 02:25:51 [INFO]	[TRAIN] Epoch=28/50, Step=550/1450, loss=46.285988, lr=2.5e-05, time_each_step=0.18s, eta=1:46:59
2020-05-12 02:26:09 [INFO]	[TRAIN] Epoch=28/50, Step=650/1450, loss=17.346588, lr=2.5e-05, time_each_step=0.16s, eta=1:46:26
2020-05-12 02:26:29 [INFO]	[TRAIN] Epoch=28/50, Step=750/1450, loss=15.612244, lr=2.5e-05, time_each_step=0.2s, eta=1:46:36
2020-05-12 02:26:46 [INFO]	[TRAIN] Epoch=28/50, Step=850/1450, loss=26.573883, lr=2.5e-05, time_each_step=0.16s, eta=1:45:55
2020-05-12 02:27:05 [INFO]	[TRAIN] Epoch=28/50, Step=950/1450, loss=36.243504, lr=2.5e-05, time_each_step=0.17s, eta=1:45:41
2020-05-12 02:27:24 [INFO]	[TRAIN] Epoch=28/50, Step=1050/1450, loss=14.874374, lr=2.5e-05, time_each_step=0.2s, eta=1:45:35
2020-05-12 02:27:41 [INFO]	[TRAIN] Epoch=28/50, Step=1150/1450, loss=16.706562, lr=2.5e-05, time_each_step=0.17s, eta=1:45:5
2020-05-12 02:28:00 [INFO]	[TRAIN] Epoch=28/50, Step=1250/1450, loss=30.432976, lr=2.5e-05, time_each_step=0.18s, eta=1:44:52
2020-05-12 02:28:20 [INFO]	[TRAIN] Epoch=28/50, Step=1350/1450, loss=24.035332, lr=2.5e-05, time_each_step=0.22s, eta=1:44:38
2020-05-12 02:28:38 [INFO]	[TRAIN] Epoch=28/50, Step=1450/1450, loss=14.098205, lr=2.5e-05, time_each_step=0.18s, eta=1:44:16
2020-05-12 02:28:38 [INFO]	[TRAIN] Epoch 28 finished, loss=22.252254, lr=2.5e-05 .
2020-05-12 02:28:38 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:11<00:00,  4.54it/s]


2020-05-12 02:28:49 [INFO]	[EVAL] Finished, Epoch=28, bbox_map=79.954838 .
2020-05-12 02:28:55 [INFO]	Model saved in ./yolov3_darknet53/epoch_28.
2020-05-12 02:28:55 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 02:29:20 [INFO]	[TRAIN] Epoch=29/50, Step=100/1450, loss=12.800526, lr=2.5e-05, time_each_step=0.18s, eta=1:44:53
2020-05-12 02:29:40 [INFO]	[TRAIN] Epoch=29/50, Step=200/1450, loss=15.114344, lr=2.5e-05, time_each_step=0.19s, eta=1:44:45
2020-05-12 02:30:00 [INFO]	[TRAIN] Epoch=29/50, Step=300/1450, loss=25.377195, lr=2.5e-05, time_each_step=0.21s, eta=1:44:48
2020-05-12 02:30:19 [INFO]	[TRAIN] Epoch=29/50, Step=400/1450, loss=21.337833, lr=2.5e-05, time_each_step=0.18s, eta=1:43:50
2020-05-12 02:30:37 [INFO]	[TRAIN] Epoch=29/50, Step=500/1450, loss=16.504471, lr=2.5e-05, time_each_step=0.2s, eta=1:43:50
2020-05-12 02:30:55 [INFO]	[TRAIN] Epoch=29/50, Step=600/1450, loss=19.844534, lr=2.5e-05, time_each_step=0.21s, eta=1:43:42
2020-05-12 02:31:14 [INFO]	[TRAIN] Epoch=29/50, Step=700/1450, loss=51.645634, lr=2.5e-05, time_each_step=0.19s, eta=1:43:4
2020-05-12 02:31:33 [INFO]	[TRAIN] Epoch=29/50, Step=800/1450, loss=39.701134, lr=2.5e-05, time_each_step=0.19s, eta=1:42:45
2020-05-12 02:31:52 [INFO]	[TRAIN] Epoch=29/50, Step=900/1450, loss=26.011673, lr=2.5e-05, time_each_step=0.19s, eta=1:42:30
2020-05-12 02:32:11 [INFO]	[TRAIN] Epoch=29/50, Step=1000/1450, loss=22.633884, lr=2.5e-05, time_each_step=0.17s, eta=1:41:58
2020-05-12 02:32:30 [INFO]	[TRAIN] Epoch=29/50, Step=1100/1450, loss=12.153311, lr=2.5e-05, time_each_step=0.17s, eta=1:41:44
2020-05-12 02:32:49 [INFO]	[TRAIN] Epoch=29/50, Step=1200/1450, loss=41.168804, lr=2.5e-05, time_each_step=0.19s, eta=1:41:32
2020-05-12 02:33:07 [INFO]	[TRAIN] Epoch=29/50, Step=1300/1450, loss=6.522502, lr=2.5e-05, time_each_step=0.18s, eta=1:41:11
2020-05-12 02:33:24 [INFO]	[TRAIN] Epoch=29/50, Step=1400/1450, loss=14.780097, lr=2.5e-05, time_each_step=0.2s, eta=1:40:54
2020-05-12 02:33:32 [INFO]	[TRAIN] Epoch 29 finished, loss=22.152287, lr=2.5e-05 .
2020-05-12 02:33:47 [INFO]	[TRAIN] Epoch=30/50, Step=50/1450, loss=23.364832, lr=2.5e-05, time_each_step=0.21s, eta=1:40:30
2020-05-12 02:34:07 [INFO]	[TRAIN] Epoch=30/50, Step=150/1450, loss=15.203386, lr=2.5e-05, time_each_step=0.22s, eta=1:40:14
2020-05-12 02:34:27 [INFO]	[TRAIN] Epoch=30/50, Step=250/1450, loss=36.164917, lr=2.5e-05, time_each_step=0.2s, eta=1:39:28
2020-05-12 02:34:46 [INFO]	[TRAIN] Epoch=30/50, Step=350/1450, loss=11.175735, lr=2.5e-05, time_each_step=0.17s, eta=1:38:43
2020-05-12 02:35:05 [INFO]	[TRAIN] Epoch=30/50, Step=450/1450, loss=21.10257, lr=2.5e-05, time_each_step=0.19s, eta=1:38:45
2020-05-12 02:35:23 [INFO]	[TRAIN] Epoch=30/50, Step=550/1450, loss=22.697634, lr=2.5e-05, time_each_step=0.17s, eta=1:38:9
2020-05-12 02:35:41 [INFO]	[TRAIN] Epoch=30/50, Step=650/1450, loss=14.728411, lr=2.5e-05, time_each_step=0.19s, eta=1:38:1
2020-05-12 02:36:00 [INFO]	[TRAIN] Epoch=30/50, Step=750/1450, loss=13.914521, lr=2.5e-05, time_each_step=0.21s, eta=1:37:56
2020-05-12 02:36:20 [INFO]	[TRAIN] Epoch=30/50, Step=850/1450, loss=25.210157, lr=2.5e-05, time_each_step=0.19s, eta=1:37:27
2020-05-12 02:36:38 [INFO]	[TRAIN] Epoch=30/50, Step=950/1450, loss=22.235209, lr=2.5e-05, time_each_step=0.2s, eta=1:37:12
2020-05-12 02:36:56 [INFO]	[TRAIN] Epoch=30/50, Step=1050/1450, loss=19.944687, lr=2.5e-05, time_each_step=0.17s, eta=1:36:38
2020-05-12 02:37:14 [INFO]	[TRAIN] Epoch=30/50, Step=1150/1450, loss=17.555498, lr=2.5e-05, time_each_step=0.18s, eta=1:36:25
2020-05-12 02:37:33 [INFO]	[TRAIN] Epoch=30/50, Step=1250/1450, loss=32.04644, lr=2.5e-05, time_each_step=0.2s, eta=1:36:11
2020-05-12 02:37:52 [INFO]	[TRAIN] Epoch=30/50, Step=1350/1450, loss=17.778969, lr=2.5e-05, time_each_step=0.17s, eta=1:35:49
2020-05-12 02:38:10 [INFO]	[TRAIN] Epoch=30/50, Step=1450/1450, loss=14.519917, lr=2.5e-05, time_each_step=0.21s, eta=1:35:32
2020-05-12 02:38:10 [INFO]	[TRAIN] Epoch 30 finished, loss=22.072916, lr=2.5e-05 .
2020-05-12 02:38:10 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:08<00:00,  5.62it/s]


2020-05-12 02:38:19 [INFO]	[EVAL] Finished, Epoch=30, bbox_map=80.130802 .
2020-05-12 02:38:24 [INFO]	Model saved in ./yolov3_darknet53/epoch_30.
2020-05-12 02:38:24 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 02:38:49 [INFO]	[TRAIN] Epoch=31/50, Step=100/1450, loss=23.752422, lr=2.5e-05, time_each_step=0.25s, eta=1:35:59
2020-05-12 02:39:10 [INFO]	[TRAIN] Epoch=31/50, Step=200/1450, loss=11.463535, lr=2.5e-05, time_each_step=0.19s, eta=1:34:17
2020-05-12 02:39:29 [INFO]	[TRAIN] Epoch=31/50, Step=300/1450, loss=13.404982, lr=2.5e-05, time_each_step=0.18s, eta=1:33:42
2020-05-12 02:39:49 [INFO]	[TRAIN] Epoch=31/50, Step=400/1450, loss=15.752264, lr=2.5e-05, time_each_step=0.2s, eta=1:33:53
2020-05-12 02:40:07 [INFO]	[TRAIN] Epoch=31/50, Step=500/1450, loss=32.963543, lr=2.5e-05, time_each_step=0.19s, eta=1:33:15
2020-05-12 02:40:26 [INFO]	[TRAIN] Epoch=31/50, Step=600/1450, loss=14.434863, lr=2.5e-05, time_each_step=0.19s, eta=1:33:0
2020-05-12 02:40:45 [INFO]	[TRAIN] Epoch=31/50, Step=700/1450, loss=9.042129, lr=2.5e-05, time_each_step=0.18s, eta=1:32:34
2020-05-12 02:41:04 [INFO]	[TRAIN] Epoch=31/50, Step=800/1450, loss=46.755959, lr=2.5e-05, time_each_step=0.2s, eta=1:32:27
2020-05-12 02:41:22 [INFO]	[TRAIN] Epoch=31/50, Step=900/1450, loss=16.250111, lr=2.5e-05, time_each_step=0.17s, eta=1:31:55
2020-05-12 02:41:41 [INFO]	[TRAIN] Epoch=31/50, Step=1000/1450, loss=22.204325, lr=2.5e-05, time_each_step=0.2s, eta=1:31:47
2020-05-12 02:42:01 [INFO]	[TRAIN] Epoch=31/50, Step=1100/1450, loss=18.905441, lr=2.5e-05, time_each_step=0.2s, eta=1:31:30
2020-05-12 02:42:18 [INFO]	[TRAIN] Epoch=31/50, Step=1200/1450, loss=38.121136, lr=2.5e-05, time_each_step=0.17s, eta=1:31:0
2020-05-12 02:42:37 [INFO]	[TRAIN] Epoch=31/50, Step=1300/1450, loss=38.672348, lr=2.5e-05, time_each_step=0.17s, eta=1:30:44
2020-05-12 02:42:55 [INFO]	[TRAIN] Epoch=31/50, Step=1400/1450, loss=22.151255, lr=2.5e-05, time_each_step=0.17s, eta=1:30:27
2020-05-12 02:43:05 [INFO]	[TRAIN] Epoch 31 finished, loss=21.733112, lr=2.5e-05 .
2020-05-12 02:43:18 [INFO]	[TRAIN] Epoch=32/50, Step=50/1450, loss=15.96411, lr=2.5e-05, time_each_step=0.19s, eta=1:30:54
2020-05-12 02:43:40 [INFO]	[TRAIN] Epoch=32/50, Step=150/1450, loss=14.941547, lr=2.5e-05, time_each_step=0.2s, eta=1:30:49
2020-05-12 02:43:59 [INFO]	[TRAIN] Epoch=32/50, Step=250/1450, loss=24.483685, lr=2.5e-05, time_each_step=0.18s, eta=1:30:9
2020-05-12 02:44:17 [INFO]	[TRAIN] Epoch=32/50, Step=350/1450, loss=12.605795, lr=2.5e-05, time_each_step=0.18s, eta=1:29:45
2020-05-12 02:44:35 [INFO]	[TRAIN] Epoch=32/50, Step=450/1450, loss=16.363293, lr=2.5e-05, time_each_step=0.17s, eta=1:29:21
2020-05-12 02:44:53 [INFO]	[TRAIN] Epoch=32/50, Step=550/1450, loss=23.956409, lr=2.5e-05, time_each_step=0.17s, eta=1:29:5
2020-05-12 02:45:12 [INFO]	[TRAIN] Epoch=32/50, Step=650/1450, loss=39.149948, lr=2.5e-05, time_each_step=0.18s, eta=1:28:51
2020-05-12 02:45:31 [INFO]	[TRAIN] Epoch=32/50, Step=750/1450, loss=23.910772, lr=2.5e-05, time_each_step=0.19s, eta=1:28:46
2020-05-12 02:45:50 [INFO]	[TRAIN] Epoch=32/50, Step=850/1450, loss=20.629213, lr=2.5e-05, time_each_step=0.18s, eta=1:28:20
2020-05-12 02:46:08 [INFO]	[TRAIN] Epoch=32/50, Step=950/1450, loss=23.725906, lr=2.5e-05, time_each_step=0.19s, eta=1:28:5
2020-05-12 02:46:26 [INFO]	[TRAIN] Epoch=32/50, Step=1050/1450, loss=13.503482, lr=2.5e-05, time_each_step=0.17s, eta=1:27:38
2020-05-12 02:46:44 [INFO]	[TRAIN] Epoch=32/50, Step=1150/1450, loss=12.904362, lr=2.5e-05, time_each_step=0.2s, eta=1:27:29
2020-05-12 02:47:02 [INFO]	[TRAIN] Epoch=32/50, Step=1250/1450, loss=7.596927, lr=2.5e-05, time_each_step=0.17s, eta=1:27:4
2020-05-12 02:47:20 [INFO]	[TRAIN] Epoch=32/50, Step=1350/1450, loss=10.072374, lr=2.5e-05, time_each_step=0.16s, eta=1:26:46
2020-05-12 02:47:38 [INFO]	[TRAIN] Epoch=32/50, Step=1450/1450, loss=24.095531, lr=2.5e-05, time_each_step=0.16s, eta=1:26:29
2020-05-12 02:47:38 [INFO]	[TRAIN] Epoch 32 finished, loss=21.596851, lr=2.5e-05 .
2020-05-12 02:47:38 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.42it/s]


2020-05-12 02:47:47 [INFO]	[EVAL] Finished, Epoch=32, bbox_map=78.746359 .
2020-05-12 02:47:53 [INFO]	Model saved in ./yolov3_darknet53/epoch_32.
2020-05-12 02:47:53 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 02:48:19 [INFO]	[TRAIN] Epoch=33/50, Step=100/1450, loss=9.501947, lr=2.5e-05, time_each_step=0.21s, eta=1:24:23
2020-05-12 02:48:38 [INFO]	[TRAIN] Epoch=33/50, Step=200/1450, loss=23.464844, lr=2.5e-05, time_each_step=0.18s, eta=1:23:26
2020-05-12 02:48:57 [INFO]	[TRAIN] Epoch=33/50, Step=300/1450, loss=24.212652, lr=2.5e-05, time_each_step=0.17s, eta=1:22:53
2020-05-12 02:49:17 [INFO]	[TRAIN] Epoch=33/50, Step=400/1450, loss=38.624496, lr=2.5e-05, time_each_step=0.17s, eta=1:22:44
2020-05-12 02:49:36 [INFO]	[TRAIN] Epoch=33/50, Step=500/1450, loss=24.972832, lr=2.5e-05, time_each_step=0.19s, eta=1:22:40
2020-05-12 02:49:54 [INFO]	[TRAIN] Epoch=33/50, Step=600/1450, loss=27.246017, lr=2.5e-05, time_each_step=0.17s, eta=1:22:4
2020-05-12 02:50:14 [INFO]	[TRAIN] Epoch=33/50, Step=700/1450, loss=11.135899, lr=2.5e-05, time_each_step=0.21s, eta=1:22:16
2020-05-12 02:50:32 [INFO]	[TRAIN] Epoch=33/50, Step=800/1450, loss=16.415316, lr=2.5e-05, time_each_step=0.19s, eta=1:21:48
2020-05-12 02:50:50 [INFO]	[TRAIN] Epoch=33/50, Step=900/1450, loss=19.726141, lr=2.5e-05, time_each_step=0.21s, eta=1:21:38
2020-05-12 02:51:09 [INFO]	[TRAIN] Epoch=33/50, Step=1000/1450, loss=13.437389, lr=2.5e-05, time_each_step=0.18s, eta=1:21:0
2020-05-12 02:51:27 [INFO]	[TRAIN] Epoch=33/50, Step=1100/1450, loss=10.987149, lr=2.5e-05, time_each_step=0.2s, eta=1:20:53
2020-05-12 02:51:46 [INFO]	[TRAIN] Epoch=33/50, Step=1200/1450, loss=18.234922, lr=2.5e-05, time_each_step=0.17s, eta=1:20:24
2020-05-12 02:52:04 [INFO]	[TRAIN] Epoch=33/50, Step=1300/1450, loss=40.207565, lr=2.5e-05, time_each_step=0.18s, eta=1:20:9
2020-05-12 02:52:22 [INFO]	[TRAIN] Epoch=33/50, Step=1400/1450, loss=22.641907, lr=2.5e-05, time_each_step=0.19s, eta=1:19:51
2020-05-12 02:52:31 [INFO]	[TRAIN] Epoch 33 finished, loss=21.911964, lr=2.5e-05 .
2020-05-12 02:52:45 [INFO]	[TRAIN] Epoch=34/50, Step=50/1450, loss=38.890087, lr=2.5e-05, time_each_step=0.19s, eta=1:20:41
2020-05-12 02:53:06 [INFO]	[TRAIN] Epoch=34/50, Step=150/1450, loss=20.294312, lr=2.5e-05, time_each_step=0.19s, eta=1:20:23
2020-05-12 02:53:25 [INFO]	[TRAIN] Epoch=34/50, Step=250/1450, loss=18.143078, lr=2.5e-05, time_each_step=0.18s, eta=1:20:0
2020-05-12 02:53:44 [INFO]	[TRAIN] Epoch=34/50, Step=350/1450, loss=23.550043, lr=2.5e-05, time_each_step=0.18s, eta=1:19:35
2020-05-12 02:54:03 [INFO]	[TRAIN] Epoch=34/50, Step=450/1450, loss=30.108202, lr=2.5e-05, time_each_step=0.18s, eta=1:19:24
2020-05-12 02:54:21 [INFO]	[TRAIN] Epoch=34/50, Step=550/1450, loss=27.109913, lr=2.5e-05, time_each_step=0.18s, eta=1:19:5
2020-05-12 02:54:39 [INFO]	[TRAIN] Epoch=34/50, Step=650/1450, loss=15.446533, lr=2.5e-05, time_each_step=0.18s, eta=1:18:43
2020-05-12 02:54:56 [INFO]	[TRAIN] Epoch=34/50, Step=750/1450, loss=20.49358, lr=2.5e-05, time_each_step=0.18s, eta=1:18:28
2020-05-12 02:55:15 [INFO]	[TRAIN] Epoch=34/50, Step=850/1450, loss=11.881955, lr=2.5e-05, time_each_step=0.18s, eta=1:18:10
2020-05-12 02:55:33 [INFO]	[TRAIN] Epoch=34/50, Step=950/1450, loss=10.982794, lr=2.5e-05, time_each_step=0.17s, eta=1:17:47
2020-05-12 02:55:51 [INFO]	[TRAIN] Epoch=34/50, Step=1050/1450, loss=18.590126, lr=2.5e-05, time_each_step=0.2s, eta=1:17:42
2020-05-12 02:56:10 [INFO]	[TRAIN] Epoch=34/50, Step=1150/1450, loss=19.192514, lr=2.5e-05, time_each_step=0.2s, eta=1:17:22
2020-05-12 02:56:29 [INFO]	[TRAIN] Epoch=34/50, Step=1250/1450, loss=25.235073, lr=2.5e-05, time_each_step=0.16s, eta=1:16:54
2020-05-12 02:56:47 [INFO]	[TRAIN] Epoch=34/50, Step=1350/1450, loss=32.677788, lr=2.5e-05, time_each_step=0.19s, eta=1:16:40
2020-05-12 02:57:05 [INFO]	[TRAIN] Epoch=34/50, Step=1450/1450, loss=9.95952, lr=2.5e-05, time_each_step=0.17s, eta=1:16:21
2020-05-12 02:57:05 [INFO]	[TRAIN] Epoch 34 finished, loss=21.804626, lr=2.5e-05 .
2020-05-12 02:57:05 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:11<00:00,  4.41it/s]


2020-05-12 02:57:17 [INFO]	[EVAL] Finished, Epoch=34, bbox_map=78.857871 .
2020-05-12 02:57:23 [INFO]	Model saved in ./yolov3_darknet53/epoch_34.
2020-05-12 02:57:23 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 02:57:49 [INFO]	[TRAIN] Epoch=35/50, Step=100/1450, loss=7.480147, lr=2.5e-05, time_each_step=0.2s, eta=1:15:37
2020-05-12 02:58:10 [INFO]	[TRAIN] Epoch=35/50, Step=200/1450, loss=22.720116, lr=2.5e-05, time_each_step=0.2s, eta=1:15:16
2020-05-12 02:58:29 [INFO]	[TRAIN] Epoch=35/50, Step=300/1450, loss=13.634533, lr=2.5e-05, time_each_step=0.19s, eta=1:14:36
2020-05-12 02:58:48 [INFO]	[TRAIN] Epoch=35/50, Step=400/1450, loss=22.033453, lr=2.5e-05, time_each_step=0.19s, eta=1:14:22
2020-05-12 02:59:06 [INFO]	[TRAIN] Epoch=35/50, Step=500/1450, loss=23.213757, lr=2.5e-05, time_each_step=0.2s, eta=1:14:11
2020-05-12 02:59:24 [INFO]	[TRAIN] Epoch=35/50, Step=600/1450, loss=15.549726, lr=2.5e-05, time_each_step=0.19s, eta=1:13:40
2020-05-12 02:59:44 [INFO]	[TRAIN] Epoch=35/50, Step=700/1450, loss=22.974005, lr=2.5e-05, time_each_step=0.18s, eta=1:13:18
2020-05-12 03:00:02 [INFO]	[TRAIN] Epoch=35/50, Step=800/1450, loss=21.363466, lr=2.5e-05, time_each_step=0.19s, eta=1:13:5
2020-05-12 03:00:21 [INFO]	[TRAIN] Epoch=35/50, Step=900/1450, loss=42.945618, lr=2.5e-05, time_each_step=0.18s, eta=1:12:41
2020-05-12 03:00:40 [INFO]	[TRAIN] Epoch=35/50, Step=1000/1450, loss=31.918787, lr=2.5e-05, time_each_step=0.2s, eta=1:12:33
2020-05-12 03:00:59 [INFO]	[TRAIN] Epoch=35/50, Step=1100/1450, loss=26.488056, lr=2.5e-05, time_each_step=0.19s, eta=1:12:10
2020-05-12 03:01:18 [INFO]	[TRAIN] Epoch=35/50, Step=1200/1450, loss=6.974501, lr=2.5e-05, time_each_step=0.18s, eta=1:11:47
2020-05-12 03:01:37 [INFO]	[TRAIN] Epoch=35/50, Step=1300/1450, loss=21.463375, lr=2.5e-05, time_each_step=0.17s, eta=1:11:28
2020-05-12 03:01:54 [INFO]	[TRAIN] Epoch=35/50, Step=1400/1450, loss=23.346903, lr=2.5e-05, time_each_step=0.18s, eta=1:11:12
2020-05-12 03:02:04 [INFO]	[TRAIN] Epoch 35 finished, loss=21.47686, lr=2.5e-05 .
2020-05-12 03:02:18 [INFO]	[TRAIN] Epoch=36/50, Step=50/1450, loss=27.293488, lr=2.5e-05, time_each_step=0.21s, eta=1:12:44
2020-05-12 03:02:38 [INFO]	[TRAIN] Epoch=36/50, Step=150/1450, loss=17.894968, lr=2.5e-05, time_each_step=0.22s, eta=1:12:31
2020-05-12 03:02:58 [INFO]	[TRAIN] Epoch=36/50, Step=250/1450, loss=14.753845, lr=2.5e-05, time_each_step=0.21s, eta=1:11:57
2020-05-12 03:03:18 [INFO]	[TRAIN] Epoch=36/50, Step=350/1450, loss=19.766197, lr=2.5e-05, time_each_step=0.2s, eta=1:11:21
2020-05-12 03:03:35 [INFO]	[TRAIN] Epoch=36/50, Step=450/1450, loss=18.938108, lr=2.5e-05, time_each_step=0.19s, eta=1:10:50
2020-05-12 03:03:53 [INFO]	[TRAIN] Epoch=36/50, Step=550/1450, loss=23.243164, lr=2.5e-05, time_each_step=0.18s, eta=1:10:23
2020-05-12 03:04:12 [INFO]	[TRAIN] Epoch=36/50, Step=650/1450, loss=13.725187, lr=2.5e-05, time_each_step=0.18s, eta=1:10:12
2020-05-12 03:04:31 [INFO]	[TRAIN] Epoch=36/50, Step=750/1450, loss=14.423655, lr=2.5e-05, time_each_step=0.2s, eta=1:10:4
2020-05-12 03:04:49 [INFO]	[TRAIN] Epoch=36/50, Step=850/1450, loss=21.895716, lr=2.5e-05, time_each_step=0.18s, eta=1:9:33
2020-05-12 03:05:08 [INFO]	[TRAIN] Epoch=36/50, Step=950/1450, loss=36.661404, lr=2.5e-05, time_each_step=0.21s, eta=1:9:28
2020-05-12 03:05:27 [INFO]	[TRAIN] Epoch=36/50, Step=1050/1450, loss=22.929401, lr=2.5e-05, time_each_step=0.18s, eta=1:8:55
2020-05-12 03:05:47 [INFO]	[TRAIN] Epoch=36/50, Step=1150/1450, loss=15.623827, lr=2.5e-05, time_each_step=0.23s, eta=1:8:53
2020-05-12 03:06:05 [INFO]	[TRAIN] Epoch=36/50, Step=1250/1450, loss=28.869722, lr=2.5e-05, time_each_step=0.18s, eta=1:8:21
2020-05-12 03:06:23 [INFO]	[TRAIN] Epoch=36/50, Step=1350/1450, loss=18.300831, lr=2.5e-05, time_each_step=0.15s, eta=1:7:59
2020-05-12 03:06:41 [INFO]	[TRAIN] Epoch=36/50, Step=1450/1450, loss=28.583675, lr=2.5e-05, time_each_step=0.18s, eta=1:7:44
2020-05-12 03:06:41 [INFO]	[TRAIN] Epoch 36 finished, loss=21.698153, lr=2.5e-05 .
2020-05-12 03:06:41 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.30it/s]


2020-05-12 03:06:51 [INFO]	[EVAL] Finished, Epoch=36, bbox_map=79.567174 .
2020-05-12 03:06:56 [INFO]	Model saved in ./yolov3_darknet53/epoch_36.
2020-05-12 03:06:56 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 03:07:20 [INFO]	[TRAIN] Epoch=37/50, Step=100/1450, loss=29.443464, lr=2.5e-05, time_each_step=0.21s, eta=1:6:39
2020-05-12 03:07:40 [INFO]	[TRAIN] Epoch=37/50, Step=200/1450, loss=23.382187, lr=2.5e-05, time_each_step=0.19s, eta=1:5:57
2020-05-12 03:08:00 [INFO]	[TRAIN] Epoch=37/50, Step=300/1450, loss=14.186798, lr=2.5e-05, time_each_step=0.2s, eta=1:5:49
2020-05-12 03:08:19 [INFO]	[TRAIN] Epoch=37/50, Step=400/1450, loss=19.298639, lr=2.5e-05, time_each_step=0.19s, eta=1:5:12
2020-05-12 03:08:38 [INFO]	[TRAIN] Epoch=37/50, Step=500/1450, loss=15.229433, lr=2.5e-05, time_each_step=0.17s, eta=1:4:38
2020-05-12 03:08:56 [INFO]	[TRAIN] Epoch=37/50, Step=600/1450, loss=16.472412, lr=2.5e-05, time_each_step=0.18s, eta=1:4:32
2020-05-12 03:09:14 [INFO]	[TRAIN] Epoch=37/50, Step=700/1450, loss=21.754602, lr=2.5e-05, time_each_step=0.18s, eta=1:4:13
2020-05-12 03:09:34 [INFO]	[TRAIN] Epoch=37/50, Step=800/1450, loss=13.939719, lr=2.5e-05, time_each_step=0.19s, eta=1:3:57
2020-05-12 03:09:53 [INFO]	[TRAIN] Epoch=37/50, Step=900/1450, loss=15.024574, lr=2.5e-05, time_each_step=0.2s, eta=1:3:45
2020-05-12 03:10:10 [INFO]	[TRAIN] Epoch=37/50, Step=1000/1450, loss=15.761648, lr=2.5e-05, time_each_step=0.15s, eta=1:3:6
2020-05-12 03:10:29 [INFO]	[TRAIN] Epoch=37/50, Step=1100/1450, loss=23.860361, lr=2.5e-05, time_each_step=0.2s, eta=1:3:7
2020-05-12 03:10:47 [INFO]	[TRAIN] Epoch=37/50, Step=1200/1450, loss=30.630741, lr=2.5e-05, time_each_step=0.18s, eta=1:2:41
2020-05-12 03:11:05 [INFO]	[TRAIN] Epoch=37/50, Step=1300/1450, loss=18.169624, lr=2.5e-05, time_each_step=0.2s, eta=1:2:26
2020-05-12 03:11:23 [INFO]	[TRAIN] Epoch=37/50, Step=1400/1450, loss=24.942192, lr=2.5e-05, time_each_step=0.17s, eta=1:2:5
2020-05-12 03:11:32 [INFO]	[TRAIN] Epoch 37 finished, loss=21.643967, lr=2.5e-05 .
2020-05-12 03:11:46 [INFO]	[TRAIN] Epoch=38/50, Step=50/1450, loss=26.509512, lr=2.5e-05, time_each_step=0.21s, eta=1:1:54
2020-05-12 03:12:09 [INFO]	[TRAIN] Epoch=38/50, Step=150/1450, loss=7.844861, lr=2.5e-05, time_each_step=0.2s, eta=1:1:19
2020-05-12 03:12:29 [INFO]	[TRAIN] Epoch=38/50, Step=250/1450, loss=28.783634, lr=2.5e-05, time_each_step=0.21s, eta=1:1:5
2020-05-12 03:12:47 [INFO]	[TRAIN] Epoch=38/50, Step=350/1450, loss=22.548, lr=2.5e-05, time_each_step=0.18s, eta=1:0:19
2020-05-12 03:13:05 [INFO]	[TRAIN] Epoch=38/50, Step=450/1450, loss=5.728884, lr=2.5e-05, time_each_step=0.17s, eta=0:59:52
2020-05-12 03:13:23 [INFO]	[TRAIN] Epoch=38/50, Step=550/1450, loss=22.903629, lr=2.5e-05, time_each_step=0.17s, eta=0:59:34
2020-05-12 03:13:42 [INFO]	[TRAIN] Epoch=38/50, Step=650/1450, loss=19.784998, lr=2.5e-05, time_each_step=0.18s, eta=0:59:21
2020-05-12 03:14:01 [INFO]	[TRAIN] Epoch=38/50, Step=750/1450, loss=20.991196, lr=2.5e-05, time_each_step=0.18s, eta=0:59:5
2020-05-12 03:14:18 [INFO]	[TRAIN] Epoch=38/50, Step=850/1450, loss=8.154817, lr=2.5e-05, time_each_step=0.18s, eta=0:58:45
2020-05-12 03:14:36 [INFO]	[TRAIN] Epoch=38/50, Step=950/1450, loss=13.536217, lr=2.5e-05, time_each_step=0.17s, eta=0:58:24
2020-05-12 03:14:54 [INFO]	[TRAIN] Epoch=38/50, Step=1050/1450, loss=9.396959, lr=2.5e-05, time_each_step=0.18s, eta=0:58:11
2020-05-12 03:15:13 [INFO]	[TRAIN] Epoch=38/50, Step=1150/1450, loss=6.013625, lr=2.5e-05, time_each_step=0.19s, eta=0:57:56
2020-05-12 03:15:31 [INFO]	[TRAIN] Epoch=38/50, Step=1250/1450, loss=13.966194, lr=2.5e-05, time_each_step=0.19s, eta=0:57:36
2020-05-12 03:15:49 [INFO]	[TRAIN] Epoch=38/50, Step=1350/1450, loss=19.48671, lr=2.5e-05, time_each_step=0.18s, eta=0:57:16
2020-05-12 03:16:07 [INFO]	[TRAIN] Epoch=38/50, Step=1450/1450, loss=16.309542, lr=2.5e-05, time_each_step=0.18s, eta=0:56:58
2020-05-12 03:16:07 [INFO]	[TRAIN] Epoch 38 finished, loss=21.371342, lr=2.5e-05 .
2020-05-12 03:16:07 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.29it/s]


2020-05-12 03:16:17 [INFO]	[EVAL] Finished, Epoch=38, bbox_map=79.338431 .
2020-05-12 03:16:23 [INFO]	Model saved in ./yolov3_darknet53/epoch_38.
2020-05-12 03:16:23 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 03:16:47 [INFO]	[TRAIN] Epoch=39/50, Step=100/1450, loss=25.81234, lr=2.5e-05, time_each_step=0.2s, eta=0:56:30
2020-05-12 03:17:08 [INFO]	[TRAIN] Epoch=39/50, Step=200/1450, loss=8.230123, lr=2.5e-05, time_each_step=0.21s, eta=0:56:16
2020-05-12 03:17:27 [INFO]	[TRAIN] Epoch=39/50, Step=300/1450, loss=39.676941, lr=2.5e-05, time_each_step=0.19s, eta=0:55:31
2020-05-12 03:17:45 [INFO]	[TRAIN] Epoch=39/50, Step=400/1450, loss=13.506493, lr=2.5e-05, time_each_step=0.17s, eta=0:54:55
2020-05-12 03:18:04 [INFO]	[TRAIN] Epoch=39/50, Step=500/1450, loss=16.477041, lr=2.5e-05, time_each_step=0.19s, eta=0:54:57
2020-05-12 03:18:23 [INFO]	[TRAIN] Epoch=39/50, Step=600/1450, loss=28.709784, lr=2.5e-05, time_each_step=0.18s, eta=0:54:31
2020-05-12 03:18:41 [INFO]	[TRAIN] Epoch=39/50, Step=700/1450, loss=3.624697, lr=2.5e-05, time_each_step=0.18s, eta=0:54:14
2020-05-12 03:18:59 [INFO]	[TRAIN] Epoch=39/50, Step=800/1450, loss=8.806442, lr=2.5e-05, time_each_step=0.17s, eta=0:53:49
2020-05-12 03:19:17 [INFO]	[TRAIN] Epoch=39/50, Step=900/1450, loss=8.772015, lr=2.5e-05, time_each_step=0.18s, eta=0:53:35
2020-05-12 03:19:36 [INFO]	[TRAIN] Epoch=39/50, Step=1000/1450, loss=19.222075, lr=2.5e-05, time_each_step=0.16s, eta=0:53:10
2020-05-12 03:19:55 [INFO]	[TRAIN] Epoch=39/50, Step=1100/1450, loss=17.678719, lr=2.5e-05, time_each_step=0.17s, eta=0:52:57
2020-05-12 03:20:15 [INFO]	[TRAIN] Epoch=39/50, Step=1200/1450, loss=22.112774, lr=2.5e-05, time_each_step=0.2s, eta=0:52:45
2020-05-12 03:20:34 [INFO]	[TRAIN] Epoch=39/50, Step=1300/1450, loss=20.832081, lr=2.5e-05, time_each_step=0.2s, eta=0:52:27
2020-05-12 03:20:53 [INFO]	[TRAIN] Epoch=39/50, Step=1400/1450, loss=18.086792, lr=2.5e-05, time_each_step=0.16s, eta=0:52:4
2020-05-12 03:21:03 [INFO]	[TRAIN] Epoch 39 finished, loss=21.476032, lr=2.5e-05 .
2020-05-12 03:21:17 [INFO]	[TRAIN] Epoch=40/50, Step=50/1450, loss=10.299685, lr=2.5e-05, time_each_step=0.18s, eta=0:52:35
2020-05-12 03:21:39 [INFO]	[TRAIN] Epoch=40/50, Step=150/1450, loss=30.592941, lr=2.5e-05, time_each_step=0.22s, eta=0:52:56
2020-05-12 03:22:01 [INFO]	[TRAIN] Epoch=40/50, Step=250/1450, loss=17.805969, lr=2.5e-05, time_each_step=0.2s, eta=0:52:16
2020-05-12 03:22:19 [INFO]	[TRAIN] Epoch=40/50, Step=350/1450, loss=24.605991, lr=2.5e-05, time_each_step=0.18s, eta=0:51:36
2020-05-12 03:22:38 [INFO]	[TRAIN] Epoch=40/50, Step=450/1450, loss=8.74629, lr=2.5e-05, time_each_step=0.19s, eta=0:51:27
2020-05-12 03:22:56 [INFO]	[TRAIN] Epoch=40/50, Step=550/1450, loss=6.531452, lr=2.5e-05, time_each_step=0.17s, eta=0:50:53
2020-05-12 03:23:14 [INFO]	[TRAIN] Epoch=40/50, Step=650/1450, loss=12.565262, lr=2.5e-05, time_each_step=0.18s, eta=0:50:42
2020-05-12 03:23:33 [INFO]	[TRAIN] Epoch=40/50, Step=750/1450, loss=20.151537, lr=2.5e-05, time_each_step=0.18s, eta=0:50:22
2020-05-12 03:23:51 [INFO]	[TRAIN] Epoch=40/50, Step=850/1450, loss=13.325304, lr=2.5e-05, time_each_step=0.18s, eta=0:50:4
2020-05-12 03:24:10 [INFO]	[TRAIN] Epoch=40/50, Step=950/1450, loss=30.531696, lr=2.5e-05, time_each_step=0.19s, eta=0:49:51
2020-05-12 03:24:29 [INFO]	[TRAIN] Epoch=40/50, Step=1050/1450, loss=21.903461, lr=2.5e-05, time_each_step=0.18s, eta=0:49:29
2020-05-12 03:24:48 [INFO]	[TRAIN] Epoch=40/50, Step=1150/1450, loss=14.684308, lr=2.5e-05, time_each_step=0.2s, eta=0:49:16
2020-05-12 03:25:07 [INFO]	[TRAIN] Epoch=40/50, Step=1250/1450, loss=33.911377, lr=2.5e-05, time_each_step=0.19s, eta=0:48:53
2020-05-12 03:25:25 [INFO]	[TRAIN] Epoch=40/50, Step=1350/1450, loss=22.98683, lr=2.5e-05, time_each_step=0.19s, eta=0:48:35
2020-05-12 03:25:41 [INFO]	[TRAIN] Epoch=40/50, Step=1450/1450, loss=22.091843, lr=2.5e-05, time_each_step=0.14s, eta=0:48:16
2020-05-12 03:25:41 [INFO]	[TRAIN] Epoch 40 finished, loss=21.844925, lr=2.5e-05 .
2020-05-12 03:25:41 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:10<00:00,  4.82it/s]


2020-05-12 03:25:52 [INFO]	[EVAL] Finished, Epoch=40, bbox_map=79.640427 .
2020-05-12 03:25:58 [INFO]	Model saved in ./yolov3_darknet53/epoch_40.
2020-05-12 03:25:58 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 03:26:22 [INFO]	[TRAIN] Epoch=41/50, Step=100/1450, loss=12.917564, lr=2e-06, time_each_step=0.2s, eta=0:47:34
2020-05-12 03:26:42 [INFO]	[TRAIN] Epoch=41/50, Step=200/1450, loss=34.594124, lr=2e-06, time_each_step=0.22s, eta=0:47:45
2020-05-12 03:27:01 [INFO]	[TRAIN] Epoch=41/50, Step=300/1450, loss=19.406174, lr=2e-06, time_each_step=0.2s, eta=0:47:0
2020-05-12 03:27:21 [INFO]	[TRAIN] Epoch=41/50, Step=400/1450, loss=6.788033, lr=2e-06, time_each_step=0.18s, eta=0:46:9
2020-05-12 03:27:39 [INFO]	[TRAIN] Epoch=41/50, Step=500/1450, loss=13.54566, lr=2e-06, time_each_step=0.16s, eta=0:45:36
2020-05-12 03:27:58 [INFO]	[TRAIN] Epoch=41/50, Step=600/1450, loss=25.137333, lr=2e-06, time_each_step=0.18s, eta=0:45:42
2020-05-12 03:28:17 [INFO]	[TRAIN] Epoch=41/50, Step=700/1450, loss=28.324806, lr=2e-06, time_each_step=0.19s, eta=0:45:28
2020-05-12 03:28:35 [INFO]	[TRAIN] Epoch=41/50, Step=800/1450, loss=14.639434, lr=2e-06, time_each_step=0.19s, eta=0:45:8
2020-05-12 03:28:54 [INFO]	[TRAIN] Epoch=41/50, Step=900/1450, loss=16.571453, lr=2e-06, time_each_step=0.18s, eta=0:44:42
2020-05-12 03:29:12 [INFO]	[TRAIN] Epoch=41/50, Step=1000/1450, loss=16.014826, lr=2e-06, time_each_step=0.21s, eta=0:44:39
2020-05-12 03:29:31 [INFO]	[TRAIN] Epoch=41/50, Step=1100/1450, loss=22.701553, lr=2e-06, time_each_step=0.18s, eta=0:44:9
2020-05-12 03:29:49 [INFO]	[TRAIN] Epoch=41/50, Step=1200/1450, loss=16.103626, lr=2e-06, time_each_step=0.2s, eta=0:43:54
2020-05-12 03:30:09 [INFO]	[TRAIN] Epoch=41/50, Step=1300/1450, loss=17.18129, lr=2e-06, time_each_step=0.2s, eta=0:43:35
2020-05-12 03:30:27 [INFO]	[TRAIN] Epoch=41/50, Step=1400/1450, loss=16.60037, lr=2e-06, time_each_step=0.18s, eta=0:43:14
2020-05-12 03:30:36 [INFO]	[TRAIN] Epoch 41 finished, loss=21.280033, lr=2e-06 .
2020-05-12 03:30:52 [INFO]	[TRAIN] Epoch=42/50, Step=50/1450, loss=4.800057, lr=2e-06, time_each_step=0.22s, eta=0:43:36
2020-05-12 03:31:14 [INFO]	[TRAIN] Epoch=42/50, Step=150/1450, loss=14.482975, lr=2e-06, time_each_step=0.23s, eta=0:43:23
2020-05-12 03:31:34 [INFO]	[TRAIN] Epoch=42/50, Step=250/1450, loss=30.939203, lr=2e-06, time_each_step=0.17s, eta=0:41:56
2020-05-12 03:31:51 [INFO]	[TRAIN] Epoch=42/50, Step=350/1450, loss=33.187126, lr=2e-06, time_each_step=0.17s, eta=0:41:36
2020-05-12 03:32:11 [INFO]	[TRAIN] Epoch=42/50, Step=450/1450, loss=19.701437, lr=2e-06, time_each_step=0.19s, eta=0:41:39
2020-05-12 03:32:30 [INFO]	[TRAIN] Epoch=42/50, Step=550/1450, loss=31.084587, lr=2e-06, time_each_step=0.17s, eta=0:40:56
2020-05-12 03:32:48 [INFO]	[TRAIN] Epoch=42/50, Step=650/1450, loss=37.113998, lr=2e-06, time_each_step=0.18s, eta=0:40:51
2020-05-12 03:33:07 [INFO]	[TRAIN] Epoch=42/50, Step=750/1450, loss=21.381763, lr=2e-06, time_each_step=0.17s, eta=0:40:24
2020-05-12 03:33:26 [INFO]	[TRAIN] Epoch=42/50, Step=850/1450, loss=12.944742, lr=2e-06, time_each_step=0.22s, eta=0:40:36
2020-05-12 03:33:44 [INFO]	[TRAIN] Epoch=42/50, Step=950/1450, loss=14.575283, lr=2e-06, time_each_step=0.17s, eta=0:39:50
2020-05-12 03:34:02 [INFO]	[TRAIN] Epoch=42/50, Step=1050/1450, loss=20.529667, lr=2e-06, time_each_step=0.19s, eta=0:39:41
2020-05-12 03:34:20 [INFO]	[TRAIN] Epoch=42/50, Step=1150/1450, loss=13.446697, lr=2e-06, time_each_step=0.16s, eta=0:39:14
2020-05-12 03:34:39 [INFO]	[TRAIN] Epoch=42/50, Step=1250/1450, loss=13.666169, lr=2e-06, time_each_step=0.2s, eta=0:39:6
2020-05-12 03:34:57 [INFO]	[TRAIN] Epoch=42/50, Step=1350/1450, loss=16.764965, lr=2e-06, time_each_step=0.18s, eta=0:38:44
2020-05-12 03:35:15 [INFO]	[TRAIN] Epoch=42/50, Step=1450/1450, loss=29.469719, lr=2e-06, time_each_step=0.18s, eta=0:38:26
2020-05-12 03:35:15 [INFO]	[TRAIN] Epoch 42 finished, loss=21.368675, lr=2e-06 .
2020-05-12 03:35:15 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.47it/s]


2020-05-12 03:35:25 [INFO]	[EVAL] Finished, Epoch=42, bbox_map=80.138534 .
2020-05-12 03:35:30 [INFO]	Model saved in ./yolov3_darknet53/epoch_42.
2020-05-12 03:35:30 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 03:35:54 [INFO]	[TRAIN] Epoch=43/50, Step=100/1450, loss=14.223631, lr=2e-06, time_each_step=0.23s, eta=0:38:47
2020-05-12 03:36:14 [INFO]	[TRAIN] Epoch=43/50, Step=200/1450, loss=45.504505, lr=2e-06, time_each_step=0.18s, eta=0:37:27
2020-05-12 03:36:33 [INFO]	[TRAIN] Epoch=43/50, Step=300/1450, loss=18.475527, lr=2e-06, time_each_step=0.21s, eta=0:37:37
2020-05-12 03:36:52 [INFO]	[TRAIN] Epoch=43/50, Step=400/1450, loss=30.958317, lr=2e-06, time_each_step=0.19s, eta=0:36:52
2020-05-12 03:37:11 [INFO]	[TRAIN] Epoch=43/50, Step=500/1450, loss=14.227802, lr=2e-06, time_each_step=0.2s, eta=0:36:43
2020-05-12 03:37:28 [INFO]	[TRAIN] Epoch=43/50, Step=600/1450, loss=10.951098, lr=2e-06, time_each_step=0.16s, eta=0:35:57
2020-05-12 03:37:46 [INFO]	[TRAIN] Epoch=43/50, Step=700/1450, loss=24.296076, lr=2e-06, time_each_step=0.18s, eta=0:35:52
2020-05-12 03:38:05 [INFO]	[TRAIN] Epoch=43/50, Step=800/1450, loss=29.716915, lr=2e-06, time_each_step=0.2s, eta=0:35:45
2020-05-12 03:38:23 [INFO]	[TRAIN] Epoch=43/50, Step=900/1450, loss=11.19141, lr=2e-06, time_each_step=0.2s, eta=0:35:29
2020-05-12 03:38:42 [INFO]	[TRAIN] Epoch=43/50, Step=1000/1450, loss=19.527102, lr=2e-06, time_each_step=0.18s, eta=0:34:57
2020-05-12 03:39:01 [INFO]	[TRAIN] Epoch=43/50, Step=1100/1450, loss=14.527201, lr=2e-06, time_each_step=0.18s, eta=0:34:40
2020-05-12 03:39:18 [INFO]	[TRAIN] Epoch=43/50, Step=1200/1450, loss=12.000841, lr=2e-06, time_each_step=0.16s, eta=0:34:18
2020-05-12 03:39:36 [INFO]	[TRAIN] Epoch=43/50, Step=1300/1450, loss=24.964533, lr=2e-06, time_each_step=0.19s, eta=0:34:5
2020-05-12 03:39:54 [INFO]	[TRAIN] Epoch=43/50, Step=1400/1450, loss=17.680586, lr=2e-06, time_each_step=0.19s, eta=0:33:46
2020-05-12 03:40:02 [INFO]	[TRAIN] Epoch 43 finished, loss=21.22678, lr=2e-06 .
2020-05-12 03:40:18 [INFO]	[TRAIN] Epoch=44/50, Step=50/1450, loss=26.585829, lr=2e-06, time_each_step=0.23s, eta=0:33:29
2020-05-12 03:40:40 [INFO]	[TRAIN] Epoch=44/50, Step=150/1450, loss=16.418743, lr=2e-06, time_each_step=0.24s, eta=0:33:25
2020-05-12 03:40:59 [INFO]	[TRAIN] Epoch=44/50, Step=250/1450, loss=19.427628, lr=2e-06, time_each_step=0.19s, eta=0:31:58
2020-05-12 03:41:17 [INFO]	[TRAIN] Epoch=44/50, Step=350/1450, loss=22.436802, lr=2e-06, time_each_step=0.17s, eta=0:31:17
2020-05-12 03:41:35 [INFO]	[TRAIN] Epoch=44/50, Step=450/1450, loss=26.114246, lr=2e-06, time_each_step=0.19s, eta=0:31:20
2020-05-12 03:41:54 [INFO]	[TRAIN] Epoch=44/50, Step=550/1450, loss=19.513241, lr=2e-06, time_each_step=0.18s, eta=0:30:58
2020-05-12 03:42:13 [INFO]	[TRAIN] Epoch=44/50, Step=650/1450, loss=28.599251, lr=2e-06, time_each_step=0.19s, eta=0:30:47
2020-05-12 03:42:32 [INFO]	[TRAIN] Epoch=44/50, Step=750/1450, loss=27.755651, lr=2e-06, time_each_step=0.21s, eta=0:30:40
2020-05-12 03:42:50 [INFO]	[TRAIN] Epoch=44/50, Step=850/1450, loss=24.103565, lr=2e-06, time_each_step=0.18s, eta=0:30:0
2020-05-12 03:43:09 [INFO]	[TRAIN] Epoch=44/50, Step=950/1450, loss=23.846226, lr=2e-06, time_each_step=0.17s, eta=0:29:37
2020-05-12 03:43:27 [INFO]	[TRAIN] Epoch=44/50, Step=1050/1450, loss=11.281116, lr=2e-06, time_each_step=0.2s, eta=0:29:31
2020-05-12 03:43:44 [INFO]	[TRAIN] Epoch=44/50, Step=1150/1450, loss=19.357965, lr=2e-06, time_each_step=0.19s, eta=0:29:8
2020-05-12 03:44:02 [INFO]	[TRAIN] Epoch=44/50, Step=1250/1450, loss=20.395033, lr=2e-06, time_each_step=0.19s, eta=0:28:51
2020-05-12 03:44:19 [INFO]	[TRAIN] Epoch=44/50, Step=1350/1450, loss=19.065546, lr=2e-06, time_each_step=0.19s, eta=0:28:31
2020-05-12 03:44:35 [INFO]	[TRAIN] Epoch=44/50, Step=1450/1450, loss=15.118629, lr=2e-06, time_each_step=0.16s, eta=0:28:12
2020-05-12 03:44:35 [INFO]	[TRAIN] Epoch 44 finished, loss=21.056839, lr=2e-06 .
2020-05-12 03:44:35 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.32it/s]


2020-05-12 03:44:45 [INFO]	[EVAL] Finished, Epoch=44, bbox_map=79.228734 .
2020-05-12 03:44:51 [INFO]	Model saved in ./yolov3_darknet53/epoch_44.
2020-05-12 03:44:51 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 03:45:16 [INFO]	[TRAIN] Epoch=45/50, Step=100/1450, loss=17.839415, lr=2e-06, time_each_step=0.22s, eta=0:28:30
2020-05-12 03:45:37 [INFO]	[TRAIN] Epoch=45/50, Step=200/1450, loss=32.713921, lr=2e-06, time_each_step=0.23s, eta=0:28:16
2020-05-12 03:45:56 [INFO]	[TRAIN] Epoch=45/50, Step=300/1450, loss=19.832312, lr=2e-06, time_each_step=0.17s, eta=0:26:45
2020-05-12 03:46:14 [INFO]	[TRAIN] Epoch=45/50, Step=400/1450, loss=17.958952, lr=2e-06, time_each_step=0.18s, eta=0:26:36
2020-05-12 03:46:31 [INFO]	[TRAIN] Epoch=45/50, Step=500/1450, loss=23.911364, lr=2e-06, time_each_step=0.16s, eta=0:26:7
2020-05-12 03:46:50 [INFO]	[TRAIN] Epoch=45/50, Step=600/1450, loss=19.478085, lr=2e-06, time_each_step=0.2s, eta=0:26:24
2020-05-12 03:47:09 [INFO]	[TRAIN] Epoch=45/50, Step=700/1450, loss=20.276455, lr=2e-06, time_each_step=0.18s, eta=0:25:45
2020-05-12 03:47:26 [INFO]	[TRAIN] Epoch=45/50, Step=800/1450, loss=17.953934, lr=2e-06, time_each_step=0.17s, eta=0:25:21
2020-05-12 03:47:46 [INFO]	[TRAIN] Epoch=45/50, Step=900/1450, loss=33.433456, lr=2e-06, time_each_step=0.2s, eta=0:25:20
2020-05-12 03:48:05 [INFO]	[TRAIN] Epoch=45/50, Step=1000/1450, loss=24.006041, lr=2e-06, time_each_step=0.2s, eta=0:24:59
2020-05-12 03:48:23 [INFO]	[TRAIN] Epoch=45/50, Step=1100/1450, loss=20.784037, lr=2e-06, time_each_step=0.19s, eta=0:24:38
2020-05-12 03:48:42 [INFO]	[TRAIN] Epoch=45/50, Step=1200/1450, loss=35.208149, lr=2e-06, time_each_step=0.19s, eta=0:24:20
2020-05-12 03:49:00 [INFO]	[TRAIN] Epoch=45/50, Step=1300/1450, loss=25.116055, lr=2e-06, time_each_step=0.18s, eta=0:23:58
2020-05-12 03:49:17 [INFO]	[TRAIN] Epoch=45/50, Step=1400/1450, loss=13.932976, lr=2e-06, time_each_step=0.17s, eta=0:23:40
2020-05-12 03:49:26 [INFO]	[TRAIN] Epoch 45 finished, loss=21.638464, lr=2e-06 .
2020-05-12 03:49:41 [INFO]	[TRAIN] Epoch=46/50, Step=50/1450, loss=15.096183, lr=2e-06, time_each_step=0.21s, eta=0:24:7
2020-05-12 03:50:02 [INFO]	[TRAIN] Epoch=46/50, Step=150/1450, loss=12.169178, lr=2e-06, time_each_step=0.23s, eta=0:24:1
2020-05-12 03:50:22 [INFO]	[TRAIN] Epoch=46/50, Step=250/1450, loss=15.713007, lr=2e-06, time_each_step=0.2s, eta=0:23:2
2020-05-12 03:50:40 [INFO]	[TRAIN] Epoch=46/50, Step=350/1450, loss=22.069977, lr=2e-06, time_each_step=0.2s, eta=0:22:46
2020-05-12 03:50:59 [INFO]	[TRAIN] Epoch=46/50, Step=450/1450, loss=24.766714, lr=2e-06, time_each_step=0.19s, eta=0:22:16
2020-05-12 03:51:18 [INFO]	[TRAIN] Epoch=46/50, Step=550/1450, loss=28.113029, lr=2e-06, time_each_step=0.19s, eta=0:22:0
2020-05-12 03:51:36 [INFO]	[TRAIN] Epoch=46/50, Step=650/1450, loss=40.479797, lr=2e-06, time_each_step=0.22s, eta=0:21:59
2020-05-12 03:51:55 [INFO]	[TRAIN] Epoch=46/50, Step=750/1450, loss=16.613892, lr=2e-06, time_each_step=0.18s, eta=0:21:13
2020-05-12 03:52:13 [INFO]	[TRAIN] Epoch=46/50, Step=850/1450, loss=28.650112, lr=2e-06, time_each_step=0.18s, eta=0:20:53
2020-05-12 03:52:31 [INFO]	[TRAIN] Epoch=46/50, Step=950/1450, loss=21.339684, lr=2e-06, time_each_step=0.18s, eta=0:20:36
2020-05-12 03:52:50 [INFO]	[TRAIN] Epoch=46/50, Step=1050/1450, loss=15.261554, lr=2e-06, time_each_step=0.21s, eta=0:20:33
2020-05-12 03:53:08 [INFO]	[TRAIN] Epoch=46/50, Step=1150/1450, loss=25.522743, lr=2e-06, time_each_step=0.19s, eta=0:20:6
2020-05-12 03:53:26 [INFO]	[TRAIN] Epoch=46/50, Step=1250/1450, loss=23.348156, lr=2e-06, time_each_step=0.2s, eta=0:19:47
2020-05-12 03:53:44 [INFO]	[TRAIN] Epoch=46/50, Step=1350/1450, loss=14.184432, lr=2e-06, time_each_step=0.19s, eta=0:19:26
2020-05-12 03:54:01 [INFO]	[TRAIN] Epoch=46/50, Step=1450/1450, loss=27.598637, lr=2e-06, time_each_step=0.17s, eta=0:19:7
2020-05-12 03:54:01 [INFO]	[TRAIN] Epoch 46 finished, loss=21.65274, lr=2e-06 .
2020-05-12 03:54:01 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.40it/s]


2020-05-12 03:54:10 [INFO]	[EVAL] Finished, Epoch=46, bbox_map=79.533153 .
2020-05-12 03:54:17 [INFO]	Model saved in ./yolov3_darknet53/epoch_46.
2020-05-12 03:54:17 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 03:54:42 [INFO]	[TRAIN] Epoch=47/50, Step=100/1450, loss=13.167685, lr=2e-06, time_each_step=0.22s, eta=0:19:8
2020-05-12 03:55:02 [INFO]	[TRAIN] Epoch=47/50, Step=200/1450, loss=33.65937, lr=2e-06, time_each_step=0.19s, eta=0:18:9
2020-05-12 03:55:23 [INFO]	[TRAIN] Epoch=47/50, Step=300/1450, loss=27.498447, lr=2e-06, time_each_step=0.21s, eta=0:18:12
2020-05-12 03:55:42 [INFO]	[TRAIN] Epoch=47/50, Step=400/1450, loss=35.730129, lr=2e-06, time_each_step=0.19s, eta=0:17:31
2020-05-12 03:56:01 [INFO]	[TRAIN] Epoch=47/50, Step=500/1450, loss=37.889854, lr=2e-06, time_each_step=0.16s, eta=0:16:45
2020-05-12 03:56:21 [INFO]	[TRAIN] Epoch=47/50, Step=600/1450, loss=11.301907, lr=2e-06, time_each_step=0.18s, eta=0:16:46
2020-05-12 03:56:39 [INFO]	[TRAIN] Epoch=47/50, Step=700/1450, loss=19.906246, lr=2e-06, time_each_step=0.2s, eta=0:16:42
2020-05-12 03:56:57 [INFO]	[TRAIN] Epoch=47/50, Step=800/1450, loss=21.914421, lr=2e-06, time_each_step=0.18s, eta=0:16:15
2020-05-12 03:57:15 [INFO]	[TRAIN] Epoch=47/50, Step=900/1450, loss=22.768581, lr=2e-06, time_each_step=0.18s, eta=0:15:51
2020-05-12 03:57:35 [INFO]	[TRAIN] Epoch=47/50, Step=1000/1450, loss=25.216564, lr=2e-06, time_each_step=0.2s, eta=0:15:47
2020-05-12 03:57:53 [INFO]	[TRAIN] Epoch=47/50, Step=1100/1450, loss=27.83177, lr=2e-06, time_each_step=0.21s, eta=0:15:29
2020-05-12 03:58:11 [INFO]	[TRAIN] Epoch=47/50, Step=1200/1450, loss=29.406733, lr=2e-06, time_each_step=0.17s, eta=0:14:58
2020-05-12 03:58:30 [INFO]	[TRAIN] Epoch=47/50, Step=1300/1450, loss=11.843115, lr=2e-06, time_each_step=0.19s, eta=0:14:44
2020-05-12 03:58:48 [INFO]	[TRAIN] Epoch=47/50, Step=1400/1450, loss=22.275906, lr=2e-06, time_each_step=0.18s, eta=0:14:24
2020-05-12 03:58:57 [INFO]	[TRAIN] Epoch 47 finished, loss=21.268932, lr=2e-06 .
2020-05-12 03:59:12 [INFO]	[TRAIN] Epoch=48/50, Step=50/1450, loss=22.909513, lr=2e-06, time_each_step=0.23s, eta=0:15:14
2020-05-12 03:59:33 [INFO]	[TRAIN] Epoch=48/50, Step=150/1450, loss=12.42934, lr=2e-06, time_each_step=0.2s, eta=0:14:15
2020-05-12 03:59:52 [INFO]	[TRAIN] Epoch=48/50, Step=250/1450, loss=13.529097, lr=2e-06, time_each_step=0.16s, eta=0:13:5
2020-05-12 04:00:12 [INFO]	[TRAIN] Epoch=48/50, Step=350/1450, loss=14.251875, lr=2e-06, time_each_step=0.2s, eta=0:13:28
2020-05-12 04:00:30 [INFO]	[TRAIN] Epoch=48/50, Step=450/1450, loss=24.10988, lr=2e-06, time_each_step=0.19s, eta=0:13:3
2020-05-12 04:00:50 [INFO]	[TRAIN] Epoch=48/50, Step=550/1450, loss=27.360195, lr=2e-06, time_each_step=0.18s, eta=0:12:37
2020-05-12 04:01:08 [INFO]	[TRAIN] Epoch=48/50, Step=650/1450, loss=15.309349, lr=2e-06, time_each_step=0.18s, eta=0:12:19
2020-05-12 04:01:26 [INFO]	[TRAIN] Epoch=48/50, Step=750/1450, loss=10.84613, lr=2e-06, time_each_step=0.18s, eta=0:11:57
2020-05-12 04:01:45 [INFO]	[TRAIN] Epoch=48/50, Step=850/1450, loss=30.835384, lr=2e-06, time_each_step=0.2s, eta=0:11:50
2020-05-12 04:02:04 [INFO]	[TRAIN] Epoch=48/50, Step=950/1450, loss=34.446754, lr=2e-06, time_each_step=0.18s, eta=0:11:20
2020-05-12 04:02:22 [INFO]	[TRAIN] Epoch=48/50, Step=1050/1450, loss=14.160579, lr=2e-06, time_each_step=0.17s, eta=0:11:0
2020-05-12 04:02:40 [INFO]	[TRAIN] Epoch=48/50, Step=1150/1450, loss=43.547253, lr=2e-06, time_each_step=0.18s, eta=0:10:45
2020-05-12 04:02:59 [INFO]	[TRAIN] Epoch=48/50, Step=1250/1450, loss=8.800653, lr=2e-06, time_each_step=0.19s, eta=0:10:30
2020-05-12 04:03:17 [INFO]	[TRAIN] Epoch=48/50, Step=1350/1450, loss=20.745966, lr=2e-06, time_each_step=0.19s, eta=0:10:11
2020-05-12 04:03:35 [INFO]	[TRAIN] Epoch=48/50, Step=1450/1450, loss=35.447983, lr=2e-06, time_each_step=0.18s, eta=0:9:51
2020-05-12 04:03:35 [INFO]	[TRAIN] Epoch 48 finished, loss=21.412348, lr=2e-06 .
2020-05-12 04:03:35 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.26it/s]


2020-05-12 04:03:44 [INFO]	[EVAL] Finished, Epoch=48, bbox_map=80.079766 .
2020-05-12 04:03:51 [INFO]	Model saved in ./yolov3_darknet53/epoch_48.
2020-05-12 04:03:51 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896
2020-05-12 04:04:16 [INFO]	[TRAIN] Epoch=49/50, Step=100/1450, loss=20.409637, lr=2e-06, time_each_step=0.23s, eta=0:10:10
2020-05-12 04:04:36 [INFO]	[TRAIN] Epoch=49/50, Step=200/1450, loss=12.08161, lr=2e-06, time_each_step=0.23s, eta=0:9:43
2020-05-12 04:04:55 [INFO]	[TRAIN] Epoch=49/50, Step=300/1450, loss=9.644568, lr=2e-06, time_each_step=0.18s, eta=0:8:25
2020-05-12 04:05:14 [INFO]	[TRAIN] Epoch=49/50, Step=400/1450, loss=13.997379, lr=2e-06, time_each_step=0.19s, eta=0:8:11
2020-05-12 04:05:32 [INFO]	[TRAIN] Epoch=49/50, Step=500/1450, loss=23.0959, lr=2e-06, time_each_step=0.18s, eta=0:7:41
2020-05-12 04:05:50 [INFO]	[TRAIN] Epoch=49/50, Step=600/1450, loss=15.555802, lr=2e-06, time_each_step=0.17s, eta=0:7:19
2020-05-12 04:06:08 [INFO]	[TRAIN] Epoch=49/50, Step=700/1450, loss=12.662107, lr=2e-06, time_each_step=0.19s, eta=0:7:18
2020-05-12 04:06:27 [INFO]	[TRAIN] Epoch=49/50, Step=800/1450, loss=24.91316, lr=2e-06, time_each_step=0.2s, eta=0:7:1
2020-05-12 04:06:46 [INFO]	[TRAIN] Epoch=49/50, Step=900/1450, loss=14.157176, lr=2e-06, time_each_step=0.19s, eta=0:6:35
2020-05-12 04:07:05 [INFO]	[TRAIN] Epoch=49/50, Step=1000/1450, loss=24.783615, lr=2e-06, time_each_step=0.19s, eta=0:6:19
2020-05-12 04:07:23 [INFO]	[TRAIN] Epoch=49/50, Step=1100/1450, loss=12.970665, lr=2e-06, time_each_step=0.2s, eta=0:6:4
2020-05-12 04:07:42 [INFO]	[TRAIN] Epoch=49/50, Step=1200/1450, loss=28.496593, lr=2e-06, time_each_step=0.19s, eta=0:5:40
2020-05-12 04:08:01 [INFO]	[TRAIN] Epoch=49/50, Step=1300/1450, loss=16.312824, lr=2e-06, time_each_step=0.2s, eta=0:5:24
2020-05-12 04:08:19 [INFO]	[TRAIN] Epoch=49/50, Step=1400/1450, loss=14.928803, lr=2e-06, time_each_step=0.16s, eta=0:5:1
2020-05-12 04:08:28 [INFO]	[TRAIN] Epoch 49 finished, loss=21.320513, lr=2e-06 .
2020-05-12 04:08:41 [INFO]	[TRAIN] Epoch=50/50, Step=50/1450, loss=13.91346, lr=2e-06, time_each_step=0.2s, eta=0:4:50
2020-05-12 04:09:01 [INFO]	[TRAIN] Epoch=50/50, Step=150/1450, loss=13.58888, lr=2e-06, time_each_step=0.18s, eta=0:4:12
2020-05-12 04:09:22 [INFO]	[TRAIN] Epoch=50/50, Step=250/1450, loss=54.976391, lr=2e-06, time_each_step=0.19s, eta=0:4:2
2020-05-12 04:09:41 [INFO]	[TRAIN] Epoch=50/50, Step=350/1450, loss=27.36027, lr=2e-06, time_each_step=0.2s, eta=0:4:0
2020-05-12 04:09:59 [INFO]	[TRAIN] Epoch=50/50, Step=450/1450, loss=10.50982, lr=2e-06, time_each_step=0.2s, eta=0:3:35
2020-05-12 04:10:17 [INFO]	[TRAIN] Epoch=50/50, Step=550/1450, loss=33.401966, lr=2e-06, time_each_step=0.17s, eta=0:2:52
2020-05-12 04:10:35 [INFO]	[TRAIN] Epoch=50/50, Step=650/1450, loss=20.390518, lr=2e-06, time_each_step=0.17s, eta=0:2:35
2020-05-12 04:10:54 [INFO]	[TRAIN] Epoch=50/50, Step=750/1450, loss=14.673418, lr=2e-06, time_each_step=0.19s, eta=0:2:26
2020-05-12 04:11:14 [INFO]	[TRAIN] Epoch=50/50, Step=850/1450, loss=21.120895, lr=2e-06, time_each_step=0.2s, eta=0:2:16
2020-05-12 04:11:31 [INFO]	[TRAIN] Epoch=50/50, Step=950/1450, loss=15.620113, lr=2e-06, time_each_step=0.16s, eta=0:1:36
2020-05-12 04:11:50 [INFO]	[TRAIN] Epoch=50/50, Step=1050/1450, loss=17.35935, lr=2e-06, time_each_step=0.17s, eta=0:1:23
2020-05-12 04:12:08 [INFO]	[TRAIN] Epoch=50/50, Step=1150/1450, loss=18.866997, lr=2e-06, time_each_step=0.16s, eta=0:1:3
2020-05-12 04:12:27 [INFO]	[TRAIN] Epoch=50/50, Step=1250/1450, loss=24.416983, lr=2e-06, time_each_step=0.2s, eta=0:0:55
2020-05-12 04:12:46 [INFO]	[TRAIN] Epoch=50/50, Step=1350/1450, loss=24.867954, lr=2e-06, time_each_step=0.19s, eta=0:0:34
2020-05-12 04:13:04 [INFO]	[TRAIN] Epoch=50/50, Step=1450/1450, loss=30.21163, lr=2e-06, time_each_step=0.18s, eta=0:0:16
2020-05-12 04:13:04 [INFO]	[TRAIN] Epoch 50 finished, loss=21.401127, lr=2e-06 .
2020-05-12 04:13:04 [INFO]	Start to evaluating(total_samples=200, total_steps=50)...


100%|██████████| 50/50 [00:09<00:00,  5.39it/s]


2020-05-12 04:13:14 [INFO]	[EVAL] Finished, Epoch=50, bbox_map=79.915853 .
2020-05-12 04:13:20 [INFO]	Model saved in ./yolov3_darknet53/epoch_50.
2020-05-12 04:13:20 [INFO]	Current evaluated best model in eval_dataset is epoch_24, bbox_map=80.21345970248896

8. 評估模型:

使用 evaluate 方法進行模型評估;

最終mAP爲0.79左右;

model.evaluate(eval_dataset, batch_size=1, epoch_id=None, metric=None, return_details=False)
2020-05-12 07:21:25 [INFO]	Start to evaluating(total_samples=200, total_steps=200)...


100%|██████████| 200/200 [00:17<00:00, 11.70it/s]





OrderedDict([('bbox_map', 79.91585282122828)])

9. 加載模型用於測試:

檢測結果:

import cv2
import time
import matplotlib.pyplot as plt
%matplotlib inline

image_name = './test6.jpg'
start = time.time()
result = model.predict(image_name, eval_transforms)
# pdx.det.visualize(image_name, result, threshold=0.5, save_dir='./output/')
print('infer time:{:.6f}s'.format(time.time()-start))
print('detected num:', len(result))

im = cv2.imread(image_name)
font = cv2.FONT_HERSHEY_SIMPLEX
threshold = 0.5

for value in result:
    xmin, ymin, w, h = np.array(value['bbox']).astype(np.int)
    cls = value['category']
    score = value['score']
    if score < threshold:
        continue
    cv2.rectangle(im, (xmin, ymin), (xmin+w, ymin+h), (0, 255, 0), 4)
    cv2.putText(im, '{:s} {:.3f}'.format(cls, score),
                    (xmin, ymin), font, 0.5, (255, 0, 0), thickness=2)

cv2.imwrite('result.jpg', im)
plt.figure(figsize=(15,12))
plt.imshow(im[:, :, [2,1,0]])
plt.show()
infer time:0.091151s
detected num: 5

在這裏插入圖片描述

10. 定義車道線檢測模型:

這裏使用了開源的項目:

https://github.com/Sharpiless/advanced_lane_detection

該車道檢測算法流程爲:

  • 給定一組棋盤圖像(在camera_cal文件夾內),計算相機校準矩陣和失真係數。

  • 根據校準矩陣和失真係數對原始圖像應用失真校正。

  • 使用顏色變換,漸變等創建閾值二進制圖像。

  • 應用透視變換以校正二進制圖像(“鳥瞰”)。

  • 檢測圖像中車道像素並擬合,以找到車道邊界。

  • 將檢測到的車道邊界矯正到原始圖像。

import pickle, glob, os
import matplotlib.image as mpimg
import tools


from moviepy.editor import VideoFileClip
from IPython.display import HTML
class GlobalObjects:

    def __init__(self):
        self.__set_folders()
        self.__set_hyper_parameters()
        self.__set_perspective()
        self.__set_kernels()
        self.__set_mask_regions()

    def __set_folders(self):
        # Use one slash for paths.
        self.camera_cal_folder = 'camera_cal/'
        self.test_images = glob.glob('test_images/*.jpg')
        self.output_image_path = 'output_images/test_'
        self.output_movie_path = 'output_movies/done_'


    def __set_hyper_parameters(self):
        self.img_size   = (1280, 720) # (x,y) values for img size (cv2 uses this)
        self.img_shape  = (self.img_size[1], self.img_size[0]) # (y,x) As numpy spits out
        return

    def __set_kernels(self):
        """Kernels used for image processing"""
        self.clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))


    def __set_perspective(self):
        """The src points draw a persepective trapezoid, the dst points draw
        them as a square.  M transforms x,y from trapezoid to square for
        a birds-eye view.  M_inv does the inverse.
        """

        src = np.float32([[(.42 * self.img_shape[1],.65 * self.img_shape[0] ),
                           (.58 * self.img_shape[1], .65 * self.img_shape[0]),
                           (0 * self.img_shape[1],self.img_shape[0]),
                           (1 * self.img_shape[1], self.img_shape[0])]])

        dst = np.float32([[0,0],
                          [self.img_shape[1],0],
                          [0,self.img_shape[0]],
                          [self.img_shape[1],self.img_shape[0]]])

        self.M = cv2.getPerspectiveTransform(src, dst)
        self.M_inv = cv2.getPerspectiveTransform(dst, src)

    def __set_mask_regions(self):
        """These are verticies used for clipping the image.
        """
        self.bottom_clip = np.int32(np.int32([[[60,0], [1179,0], [1179,650], [60,650]]]))
        self.roi_clip =  np.int32(np.int32([[[640, 425], [1179,550], [979,719],
                              [299,719], [100, 550], [640, 425]]]))
class LaneFinder(object):
    """
    The mighty LaneFinder takes in a video from the front camera of a self driving car
    and produces a new video with the traffic lanes highlighted and statistics about where
    the car is relative to the center of the lane shown.
    """    
    
    def __init__(self):

        self.g             = GlobalObjects()        
        self.thresholder   = tools.ImageThresholder()
        self.distCorrector = tools.DistortionCorrector(self.g.camera_cal_folder)
        self.histFitter    = tools.HistogramLineFitter()
        self.laneDrawer    = tools.LaneDrawer()
        self.leftLane      = tools.Line()
        self.rightLane     = tools.Line()

        return

    def __image_pipeline(self, img):
        """The pipeline for processing images. Globals g are added to functions that need
        access to global variables.
        """
        resized     = self.__resize_image(img)
        undistorted = self.__correct_distortion(resized)
        warped      = self.__warp_image_to_biv(undistorted)
        thresholded = self.__threshold_image(warped)
        lines       = self.__get_lane_lines(thresholded)
        result      = self.__draw_lane_lines(undistorted, thresholded, include_stats=False)

        return result


    def __draw_lane_lines(self, undistorted, thresholded, include_stats):

        lines = {'left_line': self.leftLane,
                 'right_line': self.rightLane }

        return self.laneDrawer.draw_lanes(undistorted,
                                          thresholded,
                                          lines,
                                          self.g.M_inv,
                                          include_stats)

    def __get_lane_lines(self, img):

        self.leftLane    = self.histFitter.get_line(img, self.leftLane, 'left')
        self.rightLane   = self.histFitter.get_line(img, self.rightLane, 'right')

        return True

    def __mask_region(self, img, vertices):
        """
        Masks a region specified by clockwise vertices.
        """

        mask = np.zeros_like(img)   
        if len(img.shape) > 2:
            channel_count = img.shape[2]  # i.e. 3 or 4 depending on your image
            ignore_mask_color = (255,) * channel_count
        else:
            ignore_mask_color = 255
        cv2.fillConvexPoly(mask, vertices, ignore_mask_color)
        masked_image = cv2.bitwise_and(img, mask)
        return masked_image 

    def __resize_image(self, img):
        """
        Image is resized to the selected size for the project.
        """
        return cv2.resize(img, self.g.img_size, 
                          interpolation = cv2.INTER_CUBIC)

    def __correct_distortion(self, img):
        return self.distCorrector.undistort(img)

    def __threshold_image(self, img):
        return self.thresholder.get_thresholded_image(img)

    def __warp_image_to_biv(self, img):
        return cv2.warpPerspective(img, self.g.M, self.g.img_size)


    def test_one_image(self, pt):
        image = (mpimg.imread(pt))
        return self.__image_pipeline(image)

最終效果:

obj = LaneFinder()
result = obj.test_one_image('./result.jpg')
print(type(result), result.shape)

plt.figure(figsize=(15,12))
plt.imshow(result)
g, self.g.M, self.g.img_size)


    def test_one_image(self, pt):
        image = (mpimg.imread(pt))
        return self.__image_pipeline(image)

最終效果:

obj = LaneFinder()
result = obj.test_one_image('./result.jpg')
print(type(result), result.shape)

plt.figure(figsize=(15,12))
plt.imshow(result)
plt.show()
Loading saved calibration file...
<class 'numpy.ndarray'> (720, 1280, 3)

在這裏插入圖片描述

關於作者:

北京理工大學 大二在讀

感興趣的方向爲:目標檢測、人臉識別、EEG識別等

將會定期分享一些小項目,感興趣的朋友可以互相關注一下:主頁鏈接

也歡迎大家fork、評論交流

作者博客主頁:https://blog.csdn.net/weixin_44936889

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章