上一篇笔记记录了如何使用yolov5使用usb摄像头使用权重进行测试,测试效果如下
本篇文章具体操作步骤如下就可以了,切记版本要对应 ,我产生这个错误的原因就是版本问题,成功转换但是还是卡顿,估计是硬件usb问题,加速以后帧率得到了明显提升
git clone -b v5.0 https://github.com/ultralytics/yolov5.git
git clone -b yolov5-v5.0 https://github.com/wang-xinyu/tensorrtx.git
cd yolov5/
nvidia@nvidia-desktop:~/yolov5$ ls
best.wts data detect.py Dockerfile gen_wts.py hubconf.py LICENSE models __pycache__ README.md requirements.txt runs test.py train.py tutorial.ipynb utils wandb weights
nvidia@nvidia-desktop:~/yolov5$ git clone -b yolov5-v5.0 https://github.com/wang-xinyu/tensorrtx.git
Cloning into 'tensorrtx'...
remote: Enumerating objects: 2238, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 2238 (delta 0), reused 1 (delta 0), pack-reused 2233
Receiving objects: 100% (2238/2238), 1.85 MiB | 313.00 KiB/s, done.
Resolving deltas: 100% (1431/1431), done.
Note: checking out '791c8a4484ac08ab8808c347f5b900bdf49e15c1'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b <new-branch-name>
nvidia@nvidia-desktop:~/yolov5$ ls
best.wts data detect.py Dockerfile gen_wts.py hubconf.py LICENSE models __pycache__ README.md requirements.txt runs tensorrtx test.py train.py tutorial.ipynb utils wandb weights
nvidia@nvidia-desktop:~/yolov5$ cd tensorrtx/
nvidia@nvidia-desktop:~/yolov5/tensorrtx$ ls
alexnet crnn detr googlenet inception lprnet psenet refinedet retinaface senet tsm unet yolov3-spp yolov5
arcface dbnet Dockerfile hrnet lenet mnasnet rcnn repvgg retinafaceAntiCov shufflenetv2 tutorials vgg yolov3-tiny
centernet densenet efficientnet ibnnet LICENSE mobilenet README.md resnet scaled-yolov4 squeezenet ufld yolov3 yolov4
nvidia@nvidia-desktop:~/yolov5/tensorrtx$ cd yolov5/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ ls
calibrator.cpp calibrator.h CMakeLists.txt common.hpp cuda_utils.h gen_wts.py logging.h macros.h README.md samples utils.h yololayer.cu yololayer.h yolov5.cpp yolov5_trt.py
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ cp gen_wts.py ../../
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ ls
calibrator.cpp calibrator.h CMakeLists.txt common.hpp cuda_utils.h gen_wts.py logging.h macros.h README.md samples utils.h yololayer.cu yololayer.h yolov5.cpp yolov5_trt.py
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ cd ../..
nvidia@nvidia-desktop:~/yolov5$ ls
best.wts data detect.py Dockerfile gen_wts.py hubconf.py LICENSE models __pycache__ README.md requirements.txt runs tensorrtx test.py train.py tutorial.ipynb utils wandb weights
nvidia@nvidia-desktop:~/yolov5$
nvidia@nvidia-desktop:~/yolov5$ python3 gen_wts.py -w weights/yolov5s.pt -o yolov5s.wts
Matplotlib created a temporary config/cache directory at /tmp/matplotlib-ato3ywnd because the default path (/home/nvidia/.cache/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
nvidia@nvidia-desktop:~/yolov5$ ls
best.wts detect.py gen_wts.py LICENSE __pycache__ requirements.txt tensorrtx train.py utils weights
data Dockerfile hubconf.py models README.md runs test.py tutorial.ipynb wandb yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 478892
drwxrwxr-x 12 nvidia nvidia 4096 12月 29 13:16 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 424088219 12月 29 09:42 best.wts
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 15 nvidia nvidia 4096 12月 22 15:52 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ cp yolov5s.wts te
tensorrtx/ test.py
nvidia@nvidia-desktop:~/yolov5$ cp yolov5s.wts te
tensorrtx/ test.py
nvidia@nvidia-desktop:~/yolov5$ cp yolov5s.wts tensorrtx/
alexnet/ densenet/ .github/ inception/ mobilenet/ repvgg/ senet/ ufld/ yolov3-tiny/
arcface/ detr/ .gitignore lenet/ psenet/ resnet/ shufflenetv2/ unet/ yolov4/
centernet/ Dockerfile googlenet/ LICENSE rcnn/ retinaface/ squeezenet/ vgg/ yolov5/
crnn/ efficientnet/ hrnet/ lprnet/ README.md retinafaceAntiCov/ tsm/ yolov3/
dbnet/ .git/ ibnnet/ mnasnet/ refinedet/ scaled-yolov4/ tutorials/ yolov3-spp/
nvidia@nvidia-desktop:~/yolov5$ cp yolov5s.wts tensorrtx/yolov5/
nvidia@nvidia-desktop:~/yolov5$ ls
best.wts detect.py gen_wts.py LICENSE __pycache__ requirements.txt tensorrtx train.py utils weights
data Dockerfile hubconf.py models README.md runs test.py tutorial.ipynb wandb yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ mkdir build
nvidia@nvidia-desktop:~/yolov5$ cd tensorrtx/yolov5/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ ls
calibrator.cpp calibrator.h CMakeLists.txt common.hpp cuda_utils.h gen_wts.py logging.h macros.h README.md samples utils.h yololayer.cu yololayer.h yolov5.cpp yolov5s.wts yolov5_trt.py
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ mkdir build
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ cd build/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ ls
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cp ../
build/ calibrator.h common.hpp gen_wts.py macros.h samples/ yololayer.cu yolov5.cpp yolov5_trt.py
calibrator.cpp CMakeLists.txt cuda_utils.h logging.h README.md utils.h yololayer.h yolov5s.wts
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cp ../yolov5s.wts .
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cmake ..
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found CUDA: /usr/local/cuda-10.2 (found version "10.2")
-- Found OpenCV: /usr (found version "4.1.1")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/nvidia/yolov5/tensorrtx/yolov5/build
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ make -j6
[ 20%] Building NVCC (Device) object CMakeFiles/myplugins.dir/myplugins_generated_yololayer.cu.o
/home/nvidia/yolov5/tensorrtx/yolov5/yololayer.h(86): warning: function "nvinfer1::IPluginV2Ext::configurePlugin(const nvinfer1::Dims *, int, const nvinfer1::Dims *, int, const nvinfer1::DataType *, const nvinfer1::DataType *, const __nv_bool *, const __nv_bool *, nvinfer1::PluginFormat, int)" is hidden by "nvinfer1::YoloLayerPlugin::configurePlugin" -- virtual function override intended?
/home/nvidia/yolov5/tensorrtx/yolov5/yololayer.h(86): warning: function "nvinfer1::IPluginV2Ext::configurePlugin(const nvinfer1::Dims *, int, const nvinfer1::Dims *, int, const nvinfer1::DataType *, const nvinfer1::DataType *, const bool *, const bool *, nvinfer1::PluginFormat, int)" is hidden by "nvinfer1::YoloLayerPlugin::configurePlugin" -- virtual function override intended?
[ 40%] Linking CXX shared library libmyplugins.so
[ 40%] Built target myplugins
[ 80%] Building CXX object CMakeFiles/yolov5.dir/yolov5.cpp.o
[ 80%] Building CXX object CMakeFiles/yolov5.dir/calibrator.cpp.o
[100%] Linking CXX executable yolov5
[100%] Built target yolov5
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ ls
CMakeCache.txt CMakeFiles cmake_install.cmake libmyplugins.so Makefile yolov5 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ sudo ./yolov5 -s yolov5s.wts yolov5s.engine s
[sudo] password for nvidia:
Loading weights: yolov5s.wts
Building engine, please wait for a while...
Build engine successfully!
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ ls
CMakeCache.txt CMakeFiles cmake_install.cmake libmyplugins.so Makefile yolov5 yolov5s.engine yolov5s.wts
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
nvidia@nvidia-desktop:~/yolov5$ python3 train.py --img 640 --batch 8 --epochs 300 --data data/coco128.yaml --cfg models/yolov5s.yaml --weights weights/yolov5s.pt --device '0'
Matplotlib created a temporary config/cache directory at /tmp/matplotlib-hm4x9a5_ because the default path (/home/nvidia/.cache/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
github: skipping check (offline)
YOLOv5 🚀 v5.0-0-gf5b8f7d5 torch 1.9.0 CUDA:0 (Xavier, 31927.26953125MB)
Namespace(adam=False, artifact_alias='latest', batch_size=8, bbox_interval=-1, bucket='', cache_images=False, cfg='models/yolov5s.yaml', data='data/coco128.yaml', device='0', entity=None, epochs=300, evolve=False, exist_ok=False, global_rank=-1, hyp='data/hyp.scratch.yaml', image_weights=False, img_size=[640, 640], label_smoothing=0.0, linear_lr=False, local_rank=-1, multi_scale=False, name='exp', noautoanchor=False, nosave=False, notest=False, project='runs/train', quad=False, rect=False, resume=False, save_dir='runs/train/exp17', save_period=-1, single_cls=False, sync_bn=False, total_batch_size=8, upload_dataset=False, weights='weights/yolov5s.pt', workers=8, world_size=1)
tensorboard: Start with 'tensorboard --logdir runs/train', view at http://localhost:6006/
2022-12-29 14:30:11.401327: I tensorflow/stream_executor/platform/default/dso_loader.cc:48] Successfully opened dynamic library libcudart.so.10.2
hyperparameters: lr0=0.01, lrf=0.2, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=0.05, cls=0.5, cls_pw=1.0, obj=1.0, obj_pw=1.0, iou_t=0.2, anchor_t=4.0, fl_gamma=0.0, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, mosaic=1.0, mixup=0.0
wandb: Currently logged in as: junxing. Use `wandb login --relogin` to force relogin
wandb: Tracking run with wandb version 0.13.7
wandb: Run data is saved locally in /home/nvidia/yolov5/wandb/run-20221229_143028-3d4ixpx4
wandb: Run `wandb offline` to turn off syncing.
wandb: Syncing run exp17
wandb: ⭐️ View project at https://wandb.ai/junxing/YOLOv5
wandb: 🚀 View run at https://wandb.ai/junxing/YOLOv5/runs/3d4ixpx4
from n params module arguments
0 -1 1 3520 models.common.Focus [3, 32, 3]
1 -1 1 18560 models.common.Conv [32, 64, 3, 2]
2 -1 1 18816 models.common.C3 [64, 64, 1]
3 -1 1 73984 models.common.Conv [64, 128, 3, 2]
4 -1 1 156928 models.common.C3 [128, 128, 3]
5 -1 1 295424 models.common.Conv [128, 256, 3, 2]
6 -1 1 625152 models.common.C3 [256, 256, 3]
7 -1 1 1180672 models.common.Conv [256, 512, 3, 2]
8 -1 1 656896 models.common.SPP [512, 512, [5, 9, 13]]
9 -1 1 1182720 models.common.C3 [512, 512, 1, False]
10 -1 1 131584 models.common.Conv [512, 256, 1, 1]
11 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']
12 [-1, 6] 1 0 models.common.Concat [1]
13 -1 1 361984 models.common.C3 [512, 256, 1, False]
14 -1 1 33024 models.common.Conv [256, 128, 1, 1]
15 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']
16 [-1, 4] 1 0 models.common.Concat [1]
17 -1 1 90880 models.common.C3 [256, 128, 1, False]
18 -1 1 147712 models.common.Conv [128, 128, 3, 2]
19 [-1, 14] 1 0 models.common.Concat [1]
20 -1 1 296448 models.common.C3 [256, 256, 1, False]
21 -1 1 590336 models.common.Conv [256, 256, 3, 2]
22 [-1, 10] 1 0 models.common.Concat [1]
23 -1 1 1182720 models.common.C3 [512, 512, 1, False]
24 [17, 20, 23] 1 229245 models.yolo.Detect [80, [[10, 13, 16, 30, 33, 23], [30, 61, 62, 45, 59, 119], [116, 90, 156, 198, 373, 326]], [128, 256, 512]]
/usr/local/lib/python3.6/dist-packages/torch/nn/functional.py:718: UserWarning: Named tensors and all their associated APIs are an experimental feature and subject to change. Please do not use them for anything important until they are released as stable. (Triggered internally at /media/nvidia/NVME/pytorch/pytorch-v1.9.0/c10/core/TensorImpl.h:1156.)
return torch.max_pool2d(input, kernel_size, stride, padding, dilation, ceil_mode)
Model Summary: 283 layers, 7276605 parameters, 7276605 gradients, 17.2 GFLOPS
Transferred 360/362 items from weights/yolov5s.pt
Scaled weight_decay = 0.0005
Optimizer groups: 62 .bias, 62 conv.weight, 59 other
train: Scanning '../coco128/labels/train2017.cache' images and labels... 126 found, 2 missing, 0 empty, 0 corrupted: 100%|█████████████████████████████████████████████████████████| 128/128 [00:00<?, ?it/s]
val: Scanning '../coco128/labels/train2017.cache' images and labels... 126 found, 2 missing, 0 empty, 0 corrupted: 100%|███████████████████████████████████████████████████████████| 128/128 [00:00<?, ?it/s]
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
[W pthreadpool-cpp.cc:90] Warning: Leaking Caffe2 thread-pool after fork. (function pthreadpool)
Plotting labels...
Images sizes do not match. This will causes images to be display incorrectly in the UI.
autoanchor: Analyzing anchors... anchors/target = 4.26, Best Possible Recall (BPR) = 0.9946
Image sizes 640 train, 640 test
Using 8 dataloader workers
Logging results to runs/train/exp17
Starting training for 300 epochs...
Epoch gpu_mem box obj cls total labels img_size
0/299 3.17G 0.0442 0.07578 0.02213 0.1421 140 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:41<00:00, 2.57s/it]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [01:05<00:00, 8.15s/it]
all 128 929 0.725 0.561 0.662 0.43
Epoch gpu_mem box obj cls total labels img_size
1/299 3.1G 0.04494 0.06365 0.02356 0.1321 69 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:10<00:00, 1.54it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.45it/s]
all 128 929 0.774 0.537 0.667 0.437
Epoch gpu_mem box obj cls total labels img_size
2/299 3.1G 0.04451 0.06662 0.0223 0.1334 87 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:10<00:00, 1.54it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.44it/s]
all 128 929 0.727 0.572 0.672 0.443
Epoch gpu_mem box obj cls total labels img_size
3/299 3.1G 0.04466 0.06558 0.02245 0.1327 76 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:10<00:00, 1.55it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.44it/s]
all 128 929 0.663 0.619 0.679 0.446
Epoch gpu_mem box obj cls total labels img_size
4/299 3.1G 0.04557 0.07736 0.02223 0.1452 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.64it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.45it/s]
all 128 929 0.695 0.614 0.693 0.454
Epoch gpu_mem box obj cls total labels img_size
5/299 3.1G 0.04385 0.07084 0.0197 0.1344 117 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.75it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.44it/s]
all 128 929 0.646 0.656 0.696 0.461
Epoch gpu_mem box obj cls total labels img_size
6/299 3.1G 0.04499 0.06289 0.02026 0.1281 77 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.75it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.675 0.664 0.705 0.469
Epoch gpu_mem box obj cls total labels img_size
7/299 3.1G 0.04207 0.06669 0.01943 0.1282 123 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.75it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.45it/s]
all 128 929 0.719 0.676 0.721 0.476
Epoch gpu_mem box obj cls total labels img_size
8/299 3.1G 0.04414 0.06026 0.01744 0.1218 148 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.75it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.47it/s]
all 128 929 0.75 0.668 0.732 0.491
Epoch gpu_mem box obj cls total labels img_size
9/299 3.1G 0.04522 0.06948 0.01774 0.1324 172 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.75it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.45it/s]
all 128 929 0.725 0.683 0.737 0.497
Epoch gpu_mem box obj cls total labels img_size
10/299 3.1G 0.04339 0.06594 0.01733 0.1267 104 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.76it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.745 0.683 0.746 0.501
Epoch gpu_mem box obj cls total labels img_size
11/299 3.1G 0.04296 0.06258 0.01685 0.1224 101 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.76it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.801 0.66 0.755 0.509
Epoch gpu_mem box obj cls total labels img_size
12/299 3.1G 0.0403 0.05817 0.0126 0.1111 78 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.75it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.783 0.684 0.764 0.517
Epoch gpu_mem box obj cls total labels img_size
13/299 3.1G 0.04093 0.05994 0.01548 0.1164 112 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:09<00:00, 1.78it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.851 0.655 0.766 0.512
Epoch gpu_mem box obj cls total labels img_size
14/299 3.1G 0.04291 0.05732 0.01556 0.1158 67 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.84it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.773 0.702 0.783 0.53
Epoch gpu_mem box obj cls total labels img_size
15/299 3.1G 0.04174 0.06289 0.01372 0.1183 63 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.81it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.832 0.696 0.796 0.551
Epoch gpu_mem box obj cls total labels img_size
16/299 3.1G 0.04131 0.06024 0.01357 0.1151 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.85it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.749 0.751 0.799 0.552
Epoch gpu_mem box obj cls total labels img_size
17/299 3.1G 0.04215 0.05766 0.0153 0.1151 82 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.85it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.806 0.717 0.808 0.558
Epoch gpu_mem box obj cls total labels img_size
18/299 3.1G 0.03997 0.05508 0.01392 0.109 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.81it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.791 0.745 0.816 0.557
Epoch gpu_mem box obj cls total labels img_size
19/299 3.1G 0.04142 0.05744 0.01358 0.1124 70 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.85it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.766 0.769 0.816 0.56
Epoch gpu_mem box obj cls total labels img_size
20/299 3.1G 0.03944 0.05349 0.01275 0.1057 107 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.84it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.809 0.759 0.82 0.559
Epoch gpu_mem box obj cls total labels img_size
21/299 3.1G 0.04022 0.05315 0.0156 0.109 102 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.82it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.814 0.772 0.828 0.567
Epoch gpu_mem box obj cls total labels img_size
22/299 3.1G 0.04036 0.05316 0.01233 0.1058 98 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.87it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.814 0.751 0.826 0.552
Epoch gpu_mem box obj cls total labels img_size
23/299 3.1G 0.04097 0.04925 0.01073 0.1009 126 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.88it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.814 0.776 0.845 0.561
Epoch gpu_mem box obj cls total labels img_size
24/299 3.1G 0.0405 0.05774 0.01153 0.1098 110 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.89it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.783 0.792 0.836 0.554
Epoch gpu_mem box obj cls total labels img_size
25/299 3.1G 0.04155 0.05135 0.01118 0.1041 70 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.89it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.769 0.799 0.837 0.547
Epoch gpu_mem box obj cls total labels img_size
26/299 3.1G 0.04328 0.05526 0.01204 0.1106 88 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.89it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.789 0.812 0.854 0.573
Epoch gpu_mem box obj cls total labels img_size
27/299 3.1G 0.04277 0.05439 0.01151 0.1087 87 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.88it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.838 0.775 0.85 0.576
Epoch gpu_mem box obj cls total labels img_size
28/299 3.1G 0.04236 0.05244 0.01153 0.1063 110 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.87it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.807 0.786 0.856 0.579
Epoch gpu_mem box obj cls total labels img_size
29/299 3.1G 0.04125 0.0535 0.01029 0.105 105 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.88it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:09<00:00, 1.17s/it]
all 128 929 0.849 0.777 0.865 0.594
Epoch gpu_mem box obj cls total labels img_size
30/299 3.1G 0.03901 0.04921 0.01025 0.09847 74 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.85it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.748 0.835 0.858 0.563
Epoch gpu_mem box obj cls total labels img_size
31/299 3.1G 0.04224 0.05014 0.009894 0.1023 117 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.88it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.837 0.767 0.85 0.541
Epoch gpu_mem box obj cls total labels img_size
32/299 3.1G 0.04334 0.05735 0.01101 0.1117 112 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.91it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.803 0.777 0.846 0.556
Epoch gpu_mem box obj cls total labels img_size
33/299 3.1G 0.04309 0.05179 0.01071 0.1056 84 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.798 0.815 0.87 0.584
Epoch gpu_mem box obj cls total labels img_size
34/299 3.1G 0.04198 0.05296 0.01 0.1049 145 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.91it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.873 0.802 0.88 0.595
Epoch gpu_mem box obj cls total labels img_size
35/299 3.1G 0.04092 0.04963 0.01129 0.1018 141 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.88it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.826 0.808 0.856 0.531
Epoch gpu_mem box obj cls total labels img_size
36/299 3.1G 0.04172 0.05093 0.009627 0.1023 83 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.91it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.849 0.827 0.879 0.585
Epoch gpu_mem box obj cls total labels img_size
37/299 3.1G 0.04241 0.05743 0.01129 0.1111 195 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.90it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.841 0.844 0.89 0.604
Epoch gpu_mem box obj cls total labels img_size
38/299 3.1G 0.04146 0.04915 0.01087 0.1015 138 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.856 0.805 0.882 0.601
Epoch gpu_mem box obj cls total labels img_size
39/299 3.1G 0.04073 0.04962 0.01046 0.1008 56 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.91it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.823 0.849 0.887 0.601
Epoch gpu_mem box obj cls total labels img_size
40/299 3.1G 0.04671 0.0482 0.01005 0.1049 69 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.729 0.784 0.819 0.543
Epoch gpu_mem box obj cls total labels img_size
41/299 3.1G 0.04613 0.04559 0.008784 0.1005 116 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.752 0.826 0.86 0.572
Epoch gpu_mem box obj cls total labels img_size
42/299 3.1G 0.04617 0.04871 0.01103 0.1059 98 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.91it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.819 0.83 0.889 0.58
Epoch gpu_mem box obj cls total labels img_size
43/299 3.1G 0.04028 0.04558 0.01104 0.09689 91 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.91it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.871 0.794 0.889 0.545
Epoch gpu_mem box obj cls total labels img_size
44/299 3.1G 0.04201 0.05437 0.01042 0.1068 130 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.891 0.796 0.889 0.59
Epoch gpu_mem box obj cls total labels img_size
45/299 3.1G 0.0421 0.04915 0.01074 0.102 135 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.841 0.825 0.891 0.579
Epoch gpu_mem box obj cls total labels img_size
46/299 3.1G 0.04148 0.04365 0.009413 0.09454 83 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.761 0.843 0.863 0.561
Epoch gpu_mem box obj cls total labels img_size
47/299 3.1G 0.04511 0.04135 0.008947 0.09541 68 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.776 0.842 0.867 0.544
Epoch gpu_mem box obj cls total labels img_size
48/299 3.1G 0.04521 0.04858 0.009939 0.1037 174 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.763 0.868 0.872 0.554
Epoch gpu_mem box obj cls total labels img_size
49/299 3.1G 0.04373 0.04962 0.009598 0.1029 119 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.783 0.815 0.862 0.549
Epoch gpu_mem box obj cls total labels img_size
50/299 3.1G 0.04424 0.04442 0.01104 0.0997 81 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.817 0.844 0.887 0.56
Epoch gpu_mem box obj cls total labels img_size
51/299 3.1G 0.04117 0.04851 0.00965 0.09933 117 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.887 0.805 0.899 0.59
Epoch gpu_mem box obj cls total labels img_size
52/299 3.1G 0.04066 0.04765 0.01009 0.0984 137 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.748 0.836 0.869 0.521
Epoch gpu_mem box obj cls total labels img_size
53/299 3.1G 0.04923 0.04639 0.0102 0.1058 76 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.755 0.834 0.872 0.536
Epoch gpu_mem box obj cls total labels img_size
54/299 3.1G 0.04669 0.04843 0.01039 0.1055 109 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.833 0.812 0.876 0.566
Epoch gpu_mem box obj cls total labels img_size
55/299 3.1G 0.04204 0.04655 0.01039 0.09898 101 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.826 0.823 0.888 0.585
Epoch gpu_mem box obj cls total labels img_size
56/299 3.1G 0.04418 0.04755 0.01015 0.1019 92 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.805 0.82 0.889 0.568
Epoch gpu_mem box obj cls total labels img_size
57/299 3.1G 0.04535 0.05025 0.01092 0.1065 109 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.746 0.867 0.886 0.567
Epoch gpu_mem box obj cls total labels img_size
58/299 3.1G 0.04527 0.04707 0.01109 0.1034 59 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.98it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.751 0.755 0.833 0.493
Epoch gpu_mem box obj cls total labels img_size
59/299 3.1G 0.05505 0.05386 0.0109 0.1198 137 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:09<00:00, 1.17s/it]
all 128 929 0.57 0.775 0.737 0.38
Epoch gpu_mem box obj cls total labels img_size
60/299 3.1G 0.0528 0.05155 0.01194 0.1163 92 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.92it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.784 0.774 0.846 0.517
Epoch gpu_mem box obj cls total labels img_size
61/299 3.1G 0.05127 0.05032 0.01144 0.113 74 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.718 0.799 0.845 0.512
Epoch gpu_mem box obj cls total labels img_size
62/299 3.1G 0.04813 0.05181 0.01231 0.1123 127 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.46it/s]
all 128 929 0.764 0.747 0.839 0.484
Epoch gpu_mem box obj cls total labels img_size
63/299 3.1G 0.04839 0.04699 0.0127 0.1081 88 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.47it/s]
all 128 929 0.846 0.775 0.865 0.532
Epoch gpu_mem box obj cls total labels img_size
64/299 3.1G 0.05077 0.0524 0.01288 0.116 112 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.47it/s]
all 128 929 0.802 0.776 0.85 0.496
Epoch gpu_mem box obj cls total labels img_size
65/299 3.1G 0.04909 0.0492 0.01185 0.1101 98 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.805 0.78 0.858 0.512
Epoch gpu_mem box obj cls total labels img_size
66/299 3.1G 0.04987 0.04849 0.01288 0.1112 82 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.47it/s]
all 128 929 0.725 0.826 0.842 0.465
Epoch gpu_mem box obj cls total labels img_size
67/299 3.1G 0.04985 0.04813 0.01197 0.11 78 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.754 0.798 0.854 0.483
Epoch gpu_mem box obj cls total labels img_size
68/299 3.1G 0.05057 0.0498 0.01189 0.1123 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.76 0.802 0.849 0.501
Epoch gpu_mem box obj cls total labels img_size
69/299 3.1G 0.04832 0.05187 0.01204 0.1122 127 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.757 0.809 0.859 0.517
Epoch gpu_mem box obj cls total labels img_size
70/299 3.1G 0.04582 0.04651 0.01201 0.1043 82 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.47it/s]
all 128 929 0.76 0.813 0.868 0.527
Epoch gpu_mem box obj cls total labels img_size
71/299 3.1G 0.04416 0.04769 0.01144 0.1033 117 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.794 0.804 0.863 0.536
Epoch gpu_mem box obj cls total labels img_size
72/299 3.1G 0.04681 0.05168 0.01143 0.1099 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.846 0.759 0.874 0.511
Epoch gpu_mem box obj cls total labels img_size
73/299 3.1G 0.05097 0.05296 0.01069 0.1146 110 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.805 0.794 0.869 0.505
Epoch gpu_mem box obj cls total labels img_size
74/299 3.1G 0.04841 0.04773 0.01119 0.1073 89 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.777 0.795 0.87 0.51
Epoch gpu_mem box obj cls total labels img_size
75/299 3.1G 0.04676 0.05125 0.01049 0.1085 88 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.789 0.807 0.86 0.52
Epoch gpu_mem box obj cls total labels img_size
76/299 3.1G 0.04387 0.05096 0.01197 0.1068 93 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.807 0.782 0.879 0.54
Epoch gpu_mem box obj cls total labels img_size
77/299 3.1G 0.04537 0.05369 0.01267 0.1117 131 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.772 0.801 0.859 0.534
Epoch gpu_mem box obj cls total labels img_size
78/299 3.1G 0.04579 0.04649 0.01091 0.1032 80 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.727 0.848 0.873 0.53
Epoch gpu_mem box obj cls total labels img_size
79/299 3.1G 0.04567 0.05097 0.01055 0.1072 88 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.765 0.817 0.864 0.542
Epoch gpu_mem box obj cls total labels img_size
80/299 3.1G 0.04621 0.05136 0.01088 0.1084 110 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.745 0.847 0.875 0.533
Epoch gpu_mem box obj cls total labels img_size
81/299 3.1G 0.04464 0.04819 0.01032 0.1031 76 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.824 0.799 0.879 0.538
Epoch gpu_mem box obj cls total labels img_size
82/299 3.1G 0.04677 0.04391 0.01065 0.1013 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.767 0.842 0.882 0.55
Epoch gpu_mem box obj cls total labels img_size
83/299 3.1G 0.04744 0.04578 0.01122 0.1044 103 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.752 0.846 0.879 0.528
Epoch gpu_mem box obj cls total labels img_size
84/299 3.1G 0.04809 0.05 0.01133 0.1094 123 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.779 0.836 0.882 0.519
Epoch gpu_mem box obj cls total labels img_size
85/299 3.1G 0.04865 0.04584 0.01085 0.1053 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.828 0.827 0.888 0.545
Epoch gpu_mem box obj cls total labels img_size
86/299 3.1G 0.04708 0.04759 0.01067 0.1053 81 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.769 0.824 0.877 0.552
Epoch gpu_mem box obj cls total labels img_size
87/299 3.1G 0.04464 0.04647 0.01063 0.1017 103 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.817 0.807 0.893 0.553
Epoch gpu_mem box obj cls total labels img_size
88/299 3.1G 0.04376 0.04756 0.01109 0.1024 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.48it/s]
all 128 929 0.862 0.802 0.887 0.557
Epoch gpu_mem box obj cls total labels img_size
89/299 3.1G 0.04035 0.05076 0.01093 0.102 96 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:09<00:00, 1.17s/it]
all 128 929 0.864 0.821 0.896 0.571
Epoch gpu_mem box obj cls total labels img_size
90/299 3.1G 0.04174 0.04812 0.01032 0.1002 67 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.888 0.801 0.912 0.583
Epoch gpu_mem box obj cls total labels img_size
91/299 3.1G 0.04344 0.04668 0.01033 0.1005 63 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.863 0.817 0.903 0.587
Epoch gpu_mem box obj cls total labels img_size
92/299 3.1G 0.04741 0.04845 0.01019 0.1061 56 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.846 0.78 0.893 0.588
Epoch gpu_mem box obj cls total labels img_size
93/299 3.1G 0.04412 0.04928 0.01009 0.1035 106 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.852 0.813 0.902 0.59
Epoch gpu_mem box obj cls total labels img_size
94/299 3.1G 0.04421 0.04718 0.01089 0.1023 79 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.822 0.847 0.897 0.592
Epoch gpu_mem box obj cls total labels img_size
95/299 3.1G 0.04428 0.04608 0.01026 0.1006 169 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.819 0.832 0.891 0.575
Epoch gpu_mem box obj cls total labels img_size
96/299 3.1G 0.04239 0.04753 0.009175 0.0991 127 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.864 0.823 0.901 0.591
Epoch gpu_mem box obj cls total labels img_size
97/299 3.1G 0.04396 0.04808 0.01078 0.1028 82 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.853 0.837 0.904 0.585
Epoch gpu_mem box obj cls total labels img_size
98/299 3.1G 0.0417 0.04482 0.009814 0.09634 76 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.49it/s]
all 128 929 0.892 0.829 0.908 0.586
Epoch gpu_mem box obj cls total labels img_size
99/299 3.1G 0.04341 0.04271 0.01074 0.09685 85 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.874 0.827 0.896 0.586
Epoch gpu_mem box obj cls total labels img_size
100/299 3.1G 0.04281 0.04931 0.009618 0.1017 169 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.888 0.819 0.905 0.596
Epoch gpu_mem box obj cls total labels img_size
101/299 3.1G 0.04234 0.04376 0.01029 0.09639 96 640: 94%|████████████████████████████████████████████████████████████████████████████████▋ | 15/16 [00:07<00:00, 1.99it/s]
101/299 3.1G 0.04213 0.04411 0.01013 0.09636 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 0%| | 0/8 [00:00<?, ?it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 12%|█████████▌ | 1/8 [00:00<00:04, 1.70it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 25%|███████████████████ | 2/8 [00:01<00:03, 1.57it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 38%|████████████████████████████▌ | 3/8 [00:01<00:03, 1.55it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 50%|██████████████████████████████████████ | 4/8 [00:02<00:02, 1.58it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 62%|███████████████████████████████████████████████▌ | 5/8 [00:03<00:02, 1.48it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 75%|█████████████████████████████████████████████████████████ | 6/8 [00:03<00:01, 1.48it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.855 0.831 0.898 0.606
Epoch gpu_mem box obj cls total labels img_size
102/299 3.1G 0.04049 0.04554 0.009924 0.09596 75 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.864 0.829 0.9 0.597
Epoch gpu_mem box obj cls total labels img_size
103/299 3.1G 0.04021 0.04699 0.009469 0.09667 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.886 0.818 0.908 0.599
Epoch gpu_mem box obj cls total labels img_size
104/299 3.1G 0.04172 0.04709 0.009545 0.09835 62 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.869 0.841 0.907 0.605
Epoch gpu_mem box obj cls total labels img_size
105/299 3.1G 0.04308 0.04486 0.009565 0.09751 54 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.858 0.841 0.906 0.571
Epoch gpu_mem box obj cls total labels img_size
106/299 3.1G 0.04631 0.04656 0.009613 0.1025 84 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.872 0.82 0.9 0.572
Epoch gpu_mem box obj cls total labels img_size
107/299 3.1G 0.0446 0.04656 0.008768 0.09993 114 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.85 0.818 0.892 0.581
Epoch gpu_mem box obj cls total labels img_size
108/299 3.1G 0.04103 0.04724 0.009149 0.09742 114 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.872 0.824 0.899 0.585
Epoch gpu_mem box obj cls total labels img_size
109/299 3.1G 0.04054 0.04329 0.00926 0.0931 111 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.88 0.836 0.916 0.603
Epoch gpu_mem box obj cls total labels img_size
110/299 3.1G 0.04246 0.04096 0.00854 0.09196 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.908 0.824 0.918 0.597
Epoch gpu_mem box obj cls total labels img_size
111/299 3.1G 0.04364 0.04543 0.01026 0.09932 97 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.896 0.82 0.919 0.61
Epoch gpu_mem box obj cls total labels img_size
112/299 3.1G 0.0427 0.04555 0.009203 0.09746 93 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.862 0.853 0.916 0.609
Epoch gpu_mem box obj cls total labels img_size
113/299 3.1G 0.04272 0.04433 0.009571 0.09662 71 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.87 0.826 0.915 0.603
Epoch gpu_mem box obj cls total labels img_size
114/299 3.1G 0.04238 0.04353 0.009562 0.09547 54 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.865 0.851 0.909 0.614
Epoch gpu_mem box obj cls total labels img_size
115/299 3.1G 0.0402 0.04278 0.009179 0.09215 118 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.871 0.86 0.922 0.613
Epoch gpu_mem box obj cls total labels img_size
116/299 3.1G 0.04126 0.04323 0.009142 0.09363 70 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.832 0.88 0.92 0.616
Epoch gpu_mem box obj cls total labels img_size
117/299 3.1G 0.04183 0.04508 0.01006 0.09697 106 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.839 0.871 0.916 0.611
Epoch gpu_mem box obj cls total labels img_size
118/299 3.1G 0.03985 0.0454 0.008343 0.09359 76 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.848 0.869 0.917 0.625
Epoch gpu_mem box obj cls total labels img_size
119/299 3.1G 0.04192 0.04384 0.009317 0.09507 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:09<00:00, 1.17s/it]
all 128 929 0.846 0.874 0.919 0.607
Epoch gpu_mem box obj cls total labels img_size
120/299 3.1G 0.04181 0.04379 0.00833 0.09393 61 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.852 0.875 0.926 0.632
Epoch gpu_mem box obj cls total labels img_size
121/299 3.1G 0.04162 0.04543 0.00898 0.09603 143 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.50it/s]
all 128 929 0.832 0.904 0.937 0.625
Epoch gpu_mem box obj cls total labels img_size
122/299 3.1G 0.04076 0.04168 0.008143 0.09058 92 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.803 0.918 0.935 0.629
Epoch gpu_mem box obj cls total labels img_size
123/299 3.1G 0.04137 0.0481 0.007918 0.09739 83 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.853 0.879 0.932 0.628
Epoch gpu_mem box obj cls total labels img_size
124/299 3.1G 0.04167 0.04532 0.008971 0.09596 128 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.859 0.871 0.931 0.625
Epoch gpu_mem box obj cls total labels img_size
125/299 3.1G 0.03999 0.04274 0.008938 0.09167 107 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.857 0.864 0.935 0.615
Epoch gpu_mem box obj cls total labels img_size
126/299 3.1G 0.0408 0.04394 0.008828 0.09358 127 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.51it/s]
all 128 929 0.85 0.872 0.933 0.623
Epoch gpu_mem box obj cls total labels img_size
127/299 3.1G 0.03965 0.0458 0.008864 0.09432 101 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.879 0.866 0.939 0.624
Epoch gpu_mem box obj cls total labels img_size
128/299 3.1G 0.03981 0.03849 0.008834 0.08713 63 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.893 0.858 0.932 0.627
Epoch gpu_mem box obj cls total labels img_size
129/299 3.1G 0.04063 0.04091 0.007911 0.08945 104 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.893 0.84 0.93 0.608
Epoch gpu_mem box obj cls total labels img_size
130/299 3.1G 0.03951 0.04534 0.008449 0.0933 67 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.881 0.867 0.932 0.632
Epoch gpu_mem box obj cls total labels img_size
131/299 3.1G 0.0386 0.04141 0.008272 0.08829 136 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.888 0.868 0.934 0.639
Epoch gpu_mem box obj cls total labels img_size
132/299 3.1G 0.03889 0.04308 0.008532 0.0905 114 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.882 0.852 0.924 0.63
Epoch gpu_mem box obj cls total labels img_size
133/299 3.1G 0.04185 0.03918 0.008573 0.0896 163 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.52it/s]
all 128 929 0.878 0.838 0.916 0.612
Epoch gpu_mem box obj cls total labels img_size
134/299 3.1G 0.04044 0.04018 0.008048 0.08866 178 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.843 0.897 0.931 0.64
Epoch gpu_mem box obj cls total labels img_size
135/299 3.1G 0.03745 0.03789 0.008012 0.08335 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.886 0.88 0.936 0.653
Epoch gpu_mem box obj cls total labels img_size
136/299 3.1G 0.0365 0.04122 0.008363 0.08608 116 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.914 0.878 0.944 0.665
Epoch gpu_mem box obj cls total labels img_size
137/299 3.1G 0.03826 0.04206 0.008421 0.08874 97 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.53it/s]
all 128 929 0.895 0.861 0.93 0.646
Epoch gpu_mem box obj cls total labels img_size
138/299 3.1G 0.03856 0.04072 0.008414 0.08769 116 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.905 0.879 0.939 0.661
Epoch gpu_mem box obj cls total labels img_size
139/299 3.1G 0.03816 0.04208 0.007884 0.08813 118 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.859 0.906 0.937 0.654
Epoch gpu_mem box obj cls total labels img_size
140/299 3.1G 0.03863 0.03988 0.008042 0.08656 56 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.839 0.916 0.943 0.661
Epoch gpu_mem box obj cls total labels img_size
141/299 3.1G 0.04005 0.04607 0.007462 0.09358 81 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.816 0.917 0.935 0.635
Epoch gpu_mem box obj cls total labels img_size
142/299 3.1G 0.04149 0.04494 0.007895 0.09433 114 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.823 0.909 0.936 0.645
Epoch gpu_mem box obj cls total labels img_size
143/299 3.1G 0.04101 0.04381 0.008068 0.09289 97 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.824 0.904 0.936 0.65
Epoch gpu_mem box obj cls total labels img_size
144/299 3.1G 0.03809 0.04385 0.007599 0.08953 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.859 0.901 0.942 0.66
Epoch gpu_mem box obj cls total labels img_size
145/299 3.1G 0.03586 0.04378 0.008093 0.08773 143 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.887 0.906 0.95 0.671
Epoch gpu_mem box obj cls total labels img_size
146/299 3.1G 0.03508 0.03616 0.007437 0.07868 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.883 0.906 0.948 0.671
Epoch gpu_mem box obj cls total labels img_size
147/299 3.1G 0.0374 0.03842 0.008317 0.08414 88 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.853 0.909 0.943 0.658
Epoch gpu_mem box obj cls total labels img_size
148/299 3.1G 0.03908 0.04533 0.00795 0.09236 166 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.832 0.912 0.942 0.639
Epoch gpu_mem box obj cls total labels img_size
149/299 3.1G 0.03931 0.04052 0.00807 0.08791 148 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:09<00:00, 1.15s/it]
all 128 929 0.872 0.867 0.929 0.642
Epoch gpu_mem box obj cls total labels img_size
150/299 3.1G 0.0391 0.04386 0.007711 0.09067 62 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.885 0.865 0.934 0.644
Epoch gpu_mem box obj cls total labels img_size
151/299 3.1G 0.0351 0.04184 0.007676 0.08462 138 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.869 0.877 0.935 0.64
Epoch gpu_mem box obj cls total labels img_size
152/299 3.1G 0.03644 0.03985 0.007372 0.08366 162 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.871 0.893 0.941 0.65
Epoch gpu_mem box obj cls total labels img_size
153/299 3.1G 0.03677 0.03893 0.007959 0.08366 118 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.812 0.934 0.939 0.649
Epoch gpu_mem box obj cls total labels img_size
154/299 3.1G 0.03694 0.04112 0.007095 0.08515 83 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.885 0.861 0.942 0.648
Epoch gpu_mem box obj cls total labels img_size
155/299 3.1G 0.03776 0.04143 0.007755 0.08695 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.88 0.871 0.935 0.653
Epoch gpu_mem box obj cls total labels img_size
156/299 3.1G 0.03793 0.04267 0.008015 0.08862 106 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.874 0.884 0.936 0.653
Epoch gpu_mem box obj cls total labels img_size
157/299 3.1G 0.03619 0.04179 0.007514 0.08549 128 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.873 0.889 0.93 0.661
Epoch gpu_mem box obj cls total labels img_size
158/299 3.1G 0.03472 0.03792 0.007004 0.07964 106 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.856 0.922 0.938 0.662
Epoch gpu_mem box obj cls total labels img_size
159/299 3.1G 0.03613 0.0401 0.008097 0.08433 195 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.895 0.902 0.94 0.661
Epoch gpu_mem box obj cls total labels img_size
160/299 3.1G 0.03681 0.04051 0.007032 0.08435 91 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.885 0.902 0.933 0.661
Epoch gpu_mem box obj cls total labels img_size
161/299 3.1G 0.03649 0.04154 0.007826 0.08586 109 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.881 0.899 0.932 0.681
Epoch gpu_mem box obj cls total labels img_size
162/299 3.1G 0.03708 0.03933 0.006765 0.08317 122 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.894 0.887 0.941 0.68
Epoch gpu_mem box obj cls total labels img_size
163/299 3.1G 0.03704 0.03953 0.007823 0.08439 124 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.883 0.882 0.935 0.685
Epoch gpu_mem box obj cls total labels img_size
164/299 3.1G 0.03633 0.03909 0.007619 0.08304 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.877 0.903 0.941 0.686
Epoch gpu_mem box obj cls total labels img_size
165/299 3.1G 0.03461 0.03429 0.007927 0.07682 68 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.881 0.918 0.945 0.691
Epoch gpu_mem box obj cls total labels img_size
166/299 3.1G 0.03436 0.03861 0.007784 0.08076 121 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.881 0.915 0.945 0.687
Epoch gpu_mem box obj cls total labels img_size
167/299 3.1G 0.03331 0.03938 0.006787 0.07948 111 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.54it/s]
all 128 929 0.877 0.927 0.945 0.687
Epoch gpu_mem box obj cls total labels img_size
168/299 3.1G 0.03487 0.04065 0.007717 0.08324 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.859 0.927 0.945 0.688
Epoch gpu_mem box obj cls total labels img_size
169/299 3.1G 0.03449 0.03985 0.007255 0.0816 119 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.883 0.925 0.949 0.693
Epoch gpu_mem box obj cls total labels img_size
170/299 3.1G 0.03426 0.03571 0.007218 0.07719 95 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.94it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.879 0.925 0.95 0.703
Epoch gpu_mem box obj cls total labels img_size
171/299 3.1G 0.03479 0.03507 0.007816 0.07768 60 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.901 0.905 0.95 0.698
Epoch gpu_mem box obj cls total labels img_size
172/299 3.1G 0.03487 0.03683 0.006221 0.07792 86 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.55it/s]
all 128 929 0.897 0.892 0.946 0.696
Epoch gpu_mem box obj cls total labels img_size
173/299 3.1G 0.0363 0.03723 0.007345 0.08087 46 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.887 0.897 0.946 0.686
Epoch gpu_mem box obj cls total labels img_size
174/299 3.1G 0.03554 0.03572 0.006718 0.07797 131 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.903 0.908 0.951 0.697
Epoch gpu_mem box obj cls total labels img_size
175/299 3.1G 0.03444 0.03647 0.007417 0.07834 87 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.879 0.917 0.946 0.687
Epoch gpu_mem box obj cls total labels img_size
176/299 3.1G 0.03502 0.03954 0.00701 0.08157 83 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.869 0.925 0.951 0.687
Epoch gpu_mem box obj cls total labels img_size
177/299 3.1G 0.03587 0.04074 0.00708 0.08369 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.872 0.926 0.948 0.693
Epoch gpu_mem box obj cls total labels img_size
178/299 3.1G 0.03736 0.04601 0.007215 0.09059 159 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.861 0.932 0.953 0.691
Epoch gpu_mem box obj cls total labels img_size
179/299 3.1G 0.03499 0.03557 0.006822 0.07739 98 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:09<00:00, 1.13s/it]
all 128 929 0.861 0.935 0.952 0.7
Epoch gpu_mem box obj cls total labels img_size
180/299 3.1G 0.03305 0.03606 0.006717 0.07582 63 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.848 0.934 0.952 0.695
Epoch gpu_mem box obj cls total labels img_size
181/299 3.1G 0.03293 0.0363 0.007206 0.07643 101 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.848 0.937 0.952 0.703
Epoch gpu_mem box obj cls total labels img_size
182/299 3.1G 0.03281 0.03849 0.006957 0.07826 73 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.902 0.905 0.953 0.705
Epoch gpu_mem box obj cls total labels img_size
183/299 3.1G 0.03221 0.03702 0.006691 0.07592 91 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.863 0.942 0.952 0.71
Epoch gpu_mem box obj cls total labels img_size
184/299 3.1G 0.0333 0.03512 0.007253 0.07568 72 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.927 0.886 0.952 0.713
Epoch gpu_mem box obj cls total labels img_size
185/299 3.1G 0.03206 0.03946 0.006343 0.07787 96 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.872 0.931 0.95 0.709
Epoch gpu_mem box obj cls total labels img_size
186/299 3.1G 0.03258 0.03718 0.006349 0.07611 122 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.877 0.936 0.954 0.71
Epoch gpu_mem box obj cls total labels img_size
187/299 3.1G 0.03406 0.03991 0.00678 0.08075 137 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.877 0.936 0.953 0.711
Epoch gpu_mem box obj cls total labels img_size
188/299 3.1G 0.03582 0.04019 0.006752 0.08276 113 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.876 0.935 0.954 0.704
Epoch gpu_mem box obj cls total labels img_size
189/299 3.1G 0.03391 0.04333 0.006096 0.08334 107 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.88 0.932 0.953 0.716
Epoch gpu_mem box obj cls total labels img_size
190/299 3.1G 0.03508 0.03649 0.006871 0.07844 74 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.875 0.933 0.953 0.717
Epoch gpu_mem box obj cls total labels img_size
191/299 3.1G 0.03439 0.0358 0.007117 0.07731 108 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.896 0.928 0.956 0.721
Epoch gpu_mem box obj cls total labels img_size
192/299 3.1G 0.03373 0.03675 0.006644 0.07713 111 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.897 0.932 0.959 0.722
Epoch gpu_mem box obj cls total labels img_size
193/299 3.1G 0.03244 0.0363 0.007248 0.07598 72 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.896 0.928 0.957 0.726
Epoch gpu_mem box obj cls total labels img_size
194/299 3.1G 0.03273 0.03711 0.006791 0.07663 104 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.904 0.932 0.958 0.72
Epoch gpu_mem box obj cls total labels img_size
195/299 3.1G 0.033 0.03444 0.006938 0.07438 98 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.908 0.924 0.957 0.713
Epoch gpu_mem box obj cls total labels img_size
196/299 3.1G 0.03424 0.03559 0.00649 0.07632 61 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.905 0.92 0.955 0.697
Epoch gpu_mem box obj cls total labels img_size
197/299 3.1G 0.03335 0.03629 0.006231 0.07587 49 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.57it/s]
all 128 929 0.902 0.915 0.953 0.712
Epoch gpu_mem box obj cls total labels img_size
198/299 3.1G 0.03419 0.03872 0.006983 0.07989 91 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.903 0.912 0.952 0.708
Epoch gpu_mem box obj cls total labels img_size
199/299 3.1G 0.03224 0.03692 0.007194 0.07635 93 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.56it/s]
all 128 929 0.904 0.917 0.951 0.72
Epoch gpu_mem box obj cls total labels img_size
200/299 3.1G 0.03251 0.03907 0.006237 0.07782 119 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.922 0.91 0.959 0.722
Epoch gpu_mem box obj cls total labels img_size
201/299 3.1G 0.03029 0.0374 0.006078 0.07377 189 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.933 0.912 0.958 0.726
Epoch gpu_mem box obj cls total labels img_size
202/299 3.1G 0.03101 0.03719 0.006854 0.07506 157 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.92 0.916 0.958 0.73
Epoch gpu_mem box obj cls total labels img_size
203/299 3.1G 0.03428 0.04124 0.006697 0.08221 124 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.921 0.919 0.958 0.731
Epoch gpu_mem box obj cls total labels img_size
204/299 3.1G 0.03202 0.03791 0.006236 0.07616 55 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.914 0.923 0.962 0.735
Epoch gpu_mem box obj cls total labels img_size
205/299 3.1G 0.03241 0.03924 0.006486 0.07813 65 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.942 0.904 0.961 0.732
Epoch gpu_mem box obj cls total labels img_size
206/299 3.1G 0.0322 0.04061 0.00561 0.07841 104 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.937 0.901 0.961 0.728
Epoch gpu_mem box obj cls total labels img_size
207/299 3.1G 0.03074 0.0349 0.005901 0.07155 91 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.916 0.93 0.964 0.725
Epoch gpu_mem box obj cls total labels img_size
208/299 3.1G 0.0339 0.03548 0.006537 0.07592 106 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.911 0.924 0.961 0.724
Epoch gpu_mem box obj cls total labels img_size
209/299 3.1G 0.0333 0.03534 0.006486 0.07513 84 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:08<00:00, 1.09s/it]
all 128 929 0.914 0.925 0.959 0.718
Epoch gpu_mem box obj cls total labels img_size
210/299 3.1G 0.0319 0.03562 0.006145 0.07367 64 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.942 0.893 0.959 0.727
Epoch gpu_mem box obj cls total labels img_size
211/299 3.1G 0.03073 0.03579 0.005234 0.07175 75 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.58it/s]
all 128 929 0.926 0.911 0.961 0.736
Epoch gpu_mem box obj cls total labels img_size
212/299 3.1G 0.03102 0.03608 0.006358 0.07345 87 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.925 0.909 0.955 0.739
Epoch gpu_mem box obj cls total labels img_size
213/299 3.1G 0.03091 0.03421 0.006634 0.07176 79 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.931 0.911 0.957 0.743
Epoch gpu_mem box obj cls total labels img_size
214/299 3.1G 0.03025 0.03475 0.006127 0.07113 142 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.927 0.91 0.956 0.748
Epoch gpu_mem box obj cls total labels img_size
215/299 3.1G 0.03189 0.04007 0.006058 0.07801 97 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.932 0.902 0.957 0.737
Epoch gpu_mem box obj cls total labels img_size
216/299 3.1G 0.03179 0.03143 0.006226 0.06944 74 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.93 0.909 0.958 0.719
Epoch gpu_mem box obj cls total labels img_size
217/299 3.1G 0.03364 0.03502 0.005984 0.07465 98 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.921 0.913 0.954 0.735
Epoch gpu_mem box obj cls total labels img_size
218/299 3.1G 0.03117 0.03375 0.005986 0.07091 52 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.919 0.919 0.958 0.737
Epoch gpu_mem box obj cls total labels img_size
219/299 3.1G 0.03081 0.04017 0.005951 0.07693 56 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.919 0.927 0.96 0.742
Epoch gpu_mem box obj cls total labels img_size
220/299 3.1G 0.03114 0.03851 0.006373 0.07603 87 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.91 0.929 0.96 0.741
Epoch gpu_mem box obj cls total labels img_size
221/299 3.1G 0.03261 0.03787 0.006483 0.07696 94 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.911 0.93 0.961 0.735
Epoch gpu_mem box obj cls total labels img_size
222/299 3.1G 0.03322 0.03857 0.006102 0.0779 128 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.919 0.934 0.963 0.738
Epoch gpu_mem box obj cls total labels img_size
223/299 3.1G 0.0311 0.03367 0.006323 0.07109 108 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.92 0.931 0.963 0.738
Epoch gpu_mem box obj cls total labels img_size
224/299 3.1G 0.03167 0.03561 0.005771 0.07305 70 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.914 0.923 0.96 0.733
Epoch gpu_mem box obj cls total labels img_size
225/299 3.1G 0.03118 0.03338 0.005531 0.07009 71 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.86it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.933 0.918 0.961 0.733
Epoch gpu_mem box obj cls total labels img_size
226/299 3.1G 0.03182 0.03932 0.005559 0.0767 96 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.932 0.917 0.961 0.746
Epoch gpu_mem box obj cls total labels img_size
227/299 3.1G 0.03188 0.03886 0.006344 0.07709 61 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.939 0.913 0.961 0.755
Epoch gpu_mem box obj cls total labels img_size
228/299 3.1G 0.03073 0.03476 0.006049 0.07153 112 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.935 0.921 0.963 0.748
Epoch gpu_mem box obj cls total labels img_size
229/299 3.1G 0.03066 0.03414 0.005935 0.07073 89 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.925 0.922 0.963 0.757
Epoch gpu_mem box obj cls total labels img_size
230/299 3.1G 0.03059 0.03694 0.005941 0.07348 116 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.917 0.924 0.959 0.764
Epoch gpu_mem box obj cls total labels img_size
231/299 3.1G 0.03083 0.03865 0.005447 0.07493 134 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.59it/s]
all 128 929 0.921 0.926 0.959 0.77
Epoch gpu_mem box obj cls total labels img_size
232/299 3.1G 0.03073 0.03448 0.006194 0.07141 91 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.918 0.932 0.96 0.768
Epoch gpu_mem box obj cls total labels img_size
233/299 3.1G 0.02872 0.03168 0.00584 0.06624 64 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.913 0.938 0.961 0.767
Epoch gpu_mem box obj cls total labels img_size
234/299 3.1G 0.03097 0.03863 0.005684 0.07529 82 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.905 0.943 0.964 0.765
Epoch gpu_mem box obj cls total labels img_size
235/299 3.1G 0.03103 0.03532 0.005537 0.07189 68 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.87it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.902 0.942 0.964 0.762
Epoch gpu_mem box obj cls total labels img_size
236/299 3.1G 0.02939 0.03389 0.005659 0.06894 96 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.898 0.94 0.965 0.764
Epoch gpu_mem box obj cls total labels img_size
237/299 3.1G 0.0317 0.03827 0.005982 0.07595 111 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.893 0.937 0.954 0.759
Epoch gpu_mem box obj cls total labels img_size
238/299 3.1G 0.03079 0.0344 0.006131 0.07132 61 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.897 0.94 0.957 0.758
Epoch gpu_mem box obj cls total labels img_size
239/299 3.1G 0.03092 0.03111 0.005406 0.06744 53 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:08<00:00, 1.07s/it]
all 128 929 0.897 0.939 0.958 0.761
Epoch gpu_mem box obj cls total labels img_size
240/299 3.1G 0.0297 0.03564 0.005717 0.07105 128 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:05<00:00, 1.60it/s]
all 128 929 0.896 0.937 0.955 0.747
Epoch gpu_mem box obj cls total labels img_size
241/299 3.1G 0.03 0.03482 0.00552 0.07034 160 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.898 0.938 0.958 0.748
Epoch gpu_mem box obj cls total labels img_size
242/299 3.1G 0.03195 0.03612 0.006426 0.07449 119 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.899 0.937 0.957 0.746
Epoch gpu_mem box obj cls total labels img_size
243/299 3.1G 0.02993 0.03515 0.005284 0.07037 77 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.913 0.936 0.956 0.747
Epoch gpu_mem box obj cls total labels img_size
244/299 3.1G 0.0307 0.03817 0.005499 0.07437 113 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.919 0.93 0.965 0.744
Epoch gpu_mem box obj cls total labels img_size
245/299 3.1G 0.03092 0.03579 0.005687 0.0724 113 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.918 0.93 0.964 0.748
Epoch gpu_mem box obj cls total labels img_size
246/299 3.1G 0.02975 0.03486 0.005189 0.0698 77 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.926 0.928 0.966 0.755
Epoch gpu_mem box obj cls total labels img_size
247/299 3.1G 0.031 0.03381 0.00522 0.07003 127 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.932 0.925 0.966 0.764
Epoch gpu_mem box obj cls total labels img_size
248/299 3.1G 0.02875 0.03401 0.004998 0.06776 66 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.932 0.924 0.966 0.765
Epoch gpu_mem box obj cls total labels img_size
249/299 3.1G 0.02892 0.03762 0.005549 0.07209 64 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.932 0.925 0.967 0.76
Epoch gpu_mem box obj cls total labels img_size
250/299 3.1G 0.02755 0.0333 0.005349 0.0662 92 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.928 0.923 0.966 0.765
Epoch gpu_mem box obj cls total labels img_size
251/299 3.1G 0.02983 0.03765 0.005787 0.07326 186 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.932 0.921 0.964 0.768
Epoch gpu_mem box obj cls total labels img_size
252/299 3.1G 0.0273 0.034 0.005454 0.06676 85 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.927 0.923 0.967 0.765
Epoch gpu_mem box obj cls total labels img_size
253/299 3.1G 0.02816 0.03252 0.006255 0.06694 123 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.924 0.921 0.963 0.762
Epoch gpu_mem box obj cls total labels img_size
254/299 3.1G 0.02959 0.03609 0.006102 0.07178 128 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.926 0.922 0.965 0.763
Epoch gpu_mem box obj cls total labels img_size
255/299 3.1G 0.02957 0.03394 0.006028 0.06954 108 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.916 0.929 0.96 0.76
Epoch gpu_mem box obj cls total labels img_size
256/299 3.1G 0.02783 0.03174 0.005776 0.06534 67 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.906 0.933 0.958 0.759
Epoch gpu_mem box obj cls total labels img_size
257/299 3.1G 0.02859 0.03239 0.005159 0.06613 111 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.888 0.94 0.957 0.763
Epoch gpu_mem box obj cls total labels img_size
258/299 3.1G 0.02996 0.03578 0.005001 0.07074 70 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.879 0.947 0.958 0.769
Epoch gpu_mem box obj cls total labels img_size
259/299 3.1G 0.02852 0.03536 0.005078 0.06896 90 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.882 0.942 0.959 0.77
Epoch gpu_mem box obj cls total labels img_size
260/299 3.1G 0.02969 0.03133 0.005738 0.06676 94 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.94 0.894 0.958 0.772
Epoch gpu_mem box obj cls total labels img_size
261/299 3.1G 0.02886 0.03728 0.004897 0.07104 88 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.884 0.947 0.96 0.771
Epoch gpu_mem box obj cls total labels img_size
262/299 3.1G 0.02955 0.03477 0.005503 0.06982 72 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.882 0.949 0.962 0.767
Epoch gpu_mem box obj cls total labels img_size
263/299 3.1G 0.02873 0.03397 0.005136 0.06783 141 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.881 0.946 0.959 0.773
Epoch gpu_mem box obj cls total labels img_size
264/299 3.1G 0.02968 0.03493 0.005194 0.0698 100 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.884 0.945 0.961 0.771
Epoch gpu_mem box obj cls total labels img_size
265/299 3.1G 0.02862 0.03647 0.005875 0.07097 123 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.9 0.943 0.968 0.779
Epoch gpu_mem box obj cls total labels img_size
266/299 3.1G 0.02847 0.03207 0.005126 0.06567 74 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.60it/s]
all 128 929 0.898 0.942 0.967 0.775
Epoch gpu_mem box obj cls total labels img_size
267/299 3.1G 0.0316 0.03489 0.005451 0.07194 84 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.897 0.938 0.964 0.774
Epoch gpu_mem box obj cls total labels img_size
268/299 3.1G 0.0281 0.03051 0.005857 0.06447 120 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.898 0.936 0.962 0.775
Epoch gpu_mem box obj cls total labels img_size
269/299 3.1G 0.02754 0.03637 0.005086 0.06899 89 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.98it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:08<00:00, 1.05s/it]
all 128 929 0.902 0.936 0.964 0.774
Epoch gpu_mem box obj cls total labels img_size
270/299 3.1G 0.02811 0.03467 0.005473 0.06826 75 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.93it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.903 0.937 0.963 0.774
Epoch gpu_mem box obj cls total labels img_size
271/299 3.1G 0.02996 0.03392 0.005593 0.06948 67 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.904 0.936 0.963 0.78
Epoch gpu_mem box obj cls total labels img_size
272/299 3.1G 0.02806 0.03266 0.005502 0.06622 58 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.95it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.64it/s]
all 128 929 0.908 0.934 0.964 0.778
Epoch gpu_mem box obj cls total labels img_size
273/299 3.1G 0.02891 0.03273 0.005272 0.06691 118 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.915 0.93 0.963 0.783
Epoch gpu_mem box obj cls total labels img_size
274/299 3.1G 0.02967 0.03024 0.005271 0.06519 84 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.918 0.927 0.962 0.778
Epoch gpu_mem box obj cls total labels img_size
275/299 3.1G 0.02949 0.03368 0.005175 0.06834 85 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.926 0.926 0.962 0.775
Epoch gpu_mem box obj cls total labels img_size
276/299 3.1G 0.0287 0.03349 0.005351 0.06754 125 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.928 0.922 0.962 0.772
Epoch gpu_mem box obj cls total labels img_size
277/299 3.1G 0.02912 0.03449 0.005533 0.06914 79 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.932 0.927 0.966 0.774
Epoch gpu_mem box obj cls total labels img_size
278/299 3.1G 0.02817 0.0365 0.005022 0.06969 108 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.935 0.927 0.967 0.776
Epoch gpu_mem box obj cls total labels img_size
279/299 3.1G 0.02919 0.03578 0.005259 0.07024 128 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.88it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.937 0.927 0.965 0.778
Epoch gpu_mem box obj cls total labels img_size
280/299 3.1G 0.02643 0.0338 0.004862 0.06508 117 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.98it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.933 0.929 0.965 0.79
Epoch gpu_mem box obj cls total labels img_size
281/299 3.1G 0.02872 0.03856 0.005255 0.07253 156 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.932 0.931 0.965 0.785
Epoch gpu_mem box obj cls total labels img_size
282/299 3.1G 0.02837 0.03418 0.005824 0.06838 134 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.93 0.933 0.968 0.778
Epoch gpu_mem box obj cls total labels img_size
283/299 3.1G 0.02927 0.03381 0.00575 0.06882 82 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.92 0.931 0.965 0.783
Epoch gpu_mem box obj cls total labels img_size
284/299 3.1G 0.0285 0.03795 0.005209 0.07166 77 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.61it/s]
all 128 929 0.915 0.932 0.965 0.778
Epoch gpu_mem box obj cls total labels img_size
285/299 3.1G 0.02728 0.03496 0.00472 0.06696 139 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.92 0.936 0.965 0.78
Epoch gpu_mem box obj cls total labels img_size
286/299 3.1G 0.02979 0.0353 0.00529 0.07038 168 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.916 0.938 0.963 0.776
Epoch gpu_mem box obj cls total labels img_size
287/299 3.1G 0.02862 0.03366 0.005095 0.06737 105 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.911 0.937 0.963 0.783
Epoch gpu_mem box obj cls total labels img_size
288/299 3.1G 0.02804 0.0316 0.00515 0.06479 96 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.906 0.937 0.964 0.778
Epoch gpu_mem box obj cls total labels img_size
289/299 3.1G 0.02818 0.03045 0.004694 0.06332 61 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.91 0.931 0.963 0.782
Epoch gpu_mem box obj cls total labels img_size
290/299 3.1G 0.02798 0.03441 0.005267 0.06766 71 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.96it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.92 0.925 0.963 0.785
Epoch gpu_mem box obj cls total labels img_size
291/299 3.1G 0.0265 0.03155 0.004745 0.0628 72 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.934 0.921 0.965 0.787
Epoch gpu_mem box obj cls total labels img_size
292/299 3.1G 0.02749 0.03641 0.005509 0.0694 37 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.94 0.92 0.968 0.788
Epoch gpu_mem box obj cls total labels img_size
293/299 3.1G 0.02843 0.03297 0.005209 0.06661 76 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.945 0.917 0.967 0.794
Epoch gpu_mem box obj cls total labels img_size
294/299 3.1G 0.0276 0.03276 0.005642 0.06599 75 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.63it/s]
all 128 929 0.953 0.916 0.968 0.796
Epoch gpu_mem box obj cls total labels img_size
295/299 3.1G 0.02729 0.03314 0.004815 0.06524 127 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.95 0.915 0.966 0.793
Epoch gpu_mem box obj cls total labels img_size
296/299 3.1G 0.02664 0.03399 0.004936 0.06557 138 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.951 0.908 0.965 0.796
Epoch gpu_mem box obj cls total labels img_size
297/299 3.1G 0.0279 0.03301 0.005219 0.06613 64 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.62it/s]
all 128 929 0.949 0.908 0.965 0.789
Epoch gpu_mem box obj cls total labels img_size
298/299 3.1G 0.02837 0.03559 0.004903 0.06886 103 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:04<00:00, 1.64it/s]
all 128 929 0.928 0.929 0.965 0.783
Epoch gpu_mem box obj cls total labels img_size
299/299 3.1G 0.02915 0.03056 0.00565 0.06536 79 640: 100%|██████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
Class Images Labels P R mAP@.5 mAP@.5:.95: 100%|████████████████████████████████████████████████████████████████████████████| 8/8 [00:11<00:00, 1.38s/it]
all 128 929 0.923 0.928 0.964 0.785
Images sizes do not match. This will causes images to be display incorrectly in the UI.
300 epochs completed in 1.346 hours.
Optimizer stripped from runs/train/exp17/weights/last.pt, 14.8MB
Optimizer stripped from runs/train/exp17/weights/best.pt, 14.8MB
Images sizes do not match. This will causes images to be display incorrectly in the UI.
wandb: Waiting for W&B process to finish... (success).
wandb:
wandb: Run history:
wandb: metrics/mAP_0.5 ▁▂▄▅▅▆▆▆▆▆▅▆▆▆▆▇▇▇▇▇▇▇██████████████████
wandb: metrics/mAP_0.5:0.95 ▁▂▃▃▃▄▃▄▃▃▃▃▄▄▄▄▅▅▅▅▅▅▆▆▆▇▇▇▇▇▇█▇███████
wandb: metrics/precision ▁▂▅▅▅▅▄▅▆▄▄▃▆▆▆▆▆▇▆▆▆▇▆▆▆▇▇▇███▇▇█▇▇████
wandb: metrics/recall ▁▂▃▄▄▆▆▅▄▅▅▆▅▆▅▆▇▆▇▇▇▇█▇██▇█▇█▇█████████
wandb: train/box_loss ▇▆▆▆▆▆▇▆█▇▇█▆▆▇▅▆▅▅▄▄▄▃▄▃▄▃▂▃▂▃▂▂▂▂▃▂▂▁▂
wandb: train/cls_loss █▇▅▃▃▃▃▃▄▄▃▄▃▃▃▃▂▂▂▂▂▂▂▂▂▂▂▁▂▂▂▁▁▁▁▁▁▁▁▁
wandb: train/obj_loss ██▇▅▅▅▃▄▄▄▅▄▄▃▄▃▄▃▃▃▃▃▃▂▂▂▂▂▃▂▃▂▂▂▂▂▂▂▁▁
wandb: val/box_loss ▇▇▆▇█▆█▆████▇▆▆▆▅▅▄▄▄▄▃▃▃▃▃▃▂▂▂▂▂▁▁▁▁▁▁▁
wandb: val/cls_loss █▆▄▃▂▂▃▃▄▃▃▃▃▃▃▃▃▃▂▂▂▂▂▂▂▂▂▂▂▁▁▁▁▁▁▁▁▁▁▁
wandb: val/obj_loss █▇▆▅▅▄▄▄▅▅▅▄▄▄▄▃▃▃▃▃▃▃▂▂▂▂▂▂▂▂▁▁▁▁▁▁▁▁▁▁
wandb: x/lr0 ▁▂▃▄▅▆▆▇████▇▇▇▇▆▆▆▆▅▅▅▅▄▄▄▄▃▃▃▃▃▃▂▂▂▂▂▂
wandb: x/lr1 ▁▂▃▄▅▆▆▇████▇▇▇▇▆▆▆▆▅▅▅▅▄▄▄▄▃▃▃▃▃▃▂▂▂▂▂▂
wandb: x/lr2 ██▇▆▅▄▃▂▂▂▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
wandb:
wandb: Run summary:
wandb: metrics/mAP_0.5 0.96385
wandb: metrics/mAP_0.5:0.95 0.78467
wandb: metrics/precision 0.92323
wandb: metrics/recall 0.92769
wandb: train/box_loss 0.02915
wandb: train/cls_loss 0.00565
wandb: train/obj_loss 0.03056
wandb: val/box_loss 0.02162
wandb: val/cls_loss 0.00299
wandb: val/obj_loss 0.01812
wandb: x/lr0 0.002
wandb: x/lr1 0.002
wandb: x/lr2 0.002
wandb:
wandb: Synced exp17: https://wandb.ai/junxing/YOLOv5/runs/3d4ixpx4
wandb: Synced 5 W&B file(s), 337 media file(s), 1 artifact file(s) and 0 other file(s)
wandb: Find logs at: ./wandb/run-20221229_143028-3d4ixpx4/logs
模型转换
接下来:使用TensorRT加速部署YOLOv5!!!!基本流程如下:
- 使用tensorrtx/yolov5中的
gen_wts.py
文件,在yolov5-5.0中将yolov5.pt
转换为yolov5.wts
文件 - 在tensorrtx/yolov5中进行编译,生成可执行文件yolov5
- 使用yolov5可执行文件来生成
yolov5.engine
文件,即TensorRT模型
nvidia@nvidia-desktop:~/yolov5$ python3 gen_wts.py -w runs/train/exp17/weights/best.pt -o best.wts
Matplotlib created a temporary config/cache directory at /tmp/matplotlib-ed9n7r3z because the default path (/home /nvidia/.cache/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environm ent variable to a writable directory, in particular to speed up the import of Matplotlib and to better support mu ltiprocessing.
nvidia@nvidia-desktop:~/yolov5$ ls
best.wts data Dockerfile hubconf.py models README.md runs test.py tutorial.ipynb wandb yolov5s.wts
build detect.py gen_wts.py LICENSE __pycache__ requirements.txt tensorrtx train.py utils weights
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ ll
total 128876
drwxrwxr-x 13 nvidia nvidia 4096 12月 29 13:18 ./
drwxr-xr-x 46 nvidia nvidia 4096 12月 29 13:10 ../
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 16:18 best.wts
drwxrwxr-x 2 nvidia nvidia 4096 12月 29 13:18 build/
drwxrwxr-x 4 nvidia nvidia 4096 12月 29 09:51 data/
-rw-rw-r-- 1 nvidia nvidia 8816 12月 26 17:12 detect.py
-rw-rw-r-- 1 nvidia nvidia 1809 12月 21 13:16 Dockerfile
-rw-rw-r-- 1 nvidia nvidia 3610 12月 21 13:16 .dockerignore
-rw-rw-r-- 1 nvidia nvidia 1358 12月 29 13:16 gen_wts.py
drwxrwxr-x 8 nvidia nvidia 4096 12月 28 13:01 .git/
-rw-rw-r-- 1 nvidia nvidia 75 12月 21 13:16 .gitattributes
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 13:16 .github/
-rwxrwxr-x 1 nvidia nvidia 3976 12月 21 13:16 .gitignore*
-rw-rw-r-- 1 nvidia nvidia 5510 12月 21 13:16 hubconf.py
-rw-rw-r-- 1 nvidia nvidia 35126 12月 21 13:16 LICENSE
drwxrwxr-x 4 nvidia nvidia 4096 12月 21 14:16 models/
drwxrwxr-x 2 nvidia nvidia 4096 12月 21 14:16 __pycache__/
-rwxrwxr-x 1 nvidia nvidia 11191 12月 21 13:16 README.md*
-rwxrwxr-x 1 nvidia nvidia 599 12月 21 13:16 requirements.txt*
drwxr-xr-x 4 nvidia nvidia 4096 12月 22 16:39 runs/
drwxrwxr-x 41 nvidia nvidia 4096 12月 29 13:10 tensorrtx/
-rw-rw-r-- 1 nvidia nvidia 16976 12月 21 13:16 test.py
-rw-rw-r-- 1 nvidia nvidia 33779 12月 21 13:16 train.py
-rw-rw-r-- 1 nvidia nvidia 394029 12月 21 13:16 tutorial.ipynb
drwxrwxr-x 6 nvidia nvidia 4096 12月 27 13:29 utils/
drwxrwxr-x 16 nvidia nvidia 4096 12月 29 14:30 wandb/
drwxrwxr-x 2 nvidia nvidia 4096 12月 28 13:05 weights/
-rw-rw-r-- 1 nvidia nvidia 65675318 12月 29 13:17 yolov5s.wts
nvidia@nvidia-desktop:~/yolov5$ cd tensorrtx/yolov5/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ ls
build calibrator.h common.hpp gen_wts.py macros.h samples yololayer.cu yolov5.cpp yolov5_trt.py
calibrator.cpp CMakeLists.txt cuda_utils.h logging.h README.md utils.h yololayer.h yolov5s.wts
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5$ cd build/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ ls
best.wts _bus.jpg CMakeCache.txt CMakeFiles cmake_install.cmake libmyplugins.so Makefile yolov5 yolov5s.engine yolov5s.wts _zidane.jpg
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ rm best.wts
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cp ../../
alexnet/ densenet/ .github/ inception/ mobilenet/ repvgg/ senet/ ufld/ yolov3-tiny/
arcface/ detr/ .gitignore lenet/ psenet/ resnet/ shufflenetv2/ unet/ yolov4/
centernet/ Dockerfile googlenet/ LICENSE rcnn/ retinaface/ squeezenet/ vgg/ yolov5/
crnn/ efficientnet/ hrnet/ lprnet/ README.md retinafaceAntiCov/ tsm/ yolov3/
dbnet/ .git/ ibnnet/ mnasnet/ refinedet/ scaled-yolov4/ tutorials/ yolov3-spp/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cp ../../../
best.wts detect.py gen_wts.py .github/ LICENSE README.md tensorrtx/ tutorial.ipynb weights/
build/ Dockerfile .git/ .gitignore models/ requirements.txt test.py utils/ yolov5s.wts
data/ .dockerignore .gitattributes hubconf.py __pycache__/ runs/ train.py wandb/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cp ../../../
best.wts detect.py gen_wts.py .github/ LICENSE README.md tensorrtx/ tutorial.ipynb weights/
build/ Dockerfile .git/ .gitignore models/ requirements.txt test.py utils/ yolov5s.wts
data/ .dockerignore .gitattributes hubconf.py __pycache__/ runs/ train.py wandb/
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cp ../../../best.wts .
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ sudo ./yolov5 -s best.wts best.engine s
[sudo] password for nvidia:
Loading weights: best.wts
Building engine, please wait for a while...
Build engine successfully!
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$
还有, 如果我们要转换自己训练的模型,需要在编译前修改yololayer.h,这里没改用的开源的数据。
static constexpr int CLASS_NUM =80; // 数据集的类别数//修改成自己的类别数
static constexpr int INPUT_H =608;
static constexpr int INPUT_W =608;
查看使用的版本是否对应
/yolov5$ git log
commit f5b8f7d54c9fa69210da0177fec7ac2d9e4a627c (HEAD, tag: v5.0)
Author: Glenn Jocher <glenn.jocher@ultralytics.com>
Date: Sun Apr 11 19:23:47 2021 +0200
YOLOv5 v5.0 Release (#2762)
commit e2b7bc0b32ecf306fc179bb87bad82216a470b37
Author: Ben Milanko <bpmil3@student.monash.edu>
Date: Mon Apr 12 02:53:40 2021 +1000
YouTube Livestream Detection (#2752)
* Youtube livestream detection
* dependancy update to auto install pafy
* Remove print
* include youtube_dl in deps
* PEP8 reformat
* youtube url check fix
* reduce lines
* add comment
* update check_requirements
* stream framerate fix
* Update README.md
* cleanup
* PEP8
* remove cap.retrieve() failure code
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ git log
commit 791c8a4484ac08ab8808c347f5b900bdf49e15c1 (HEAD, tag: yolov5-v5.0)
Author: wang-xinyu <wangxinyu_es@163.com>
Date: Wed Oct 13 12:15:10 2021 +0000
update yolov5 readme
commit c70a33882796b5bb37f1a1bf548a551e8403ea85
Author: JumpPandaer <834662983@qq.com>
Date: Wed Oct 13 19:04:39 2021 +0800
fix a bug with maskrcnn (#758)
commit 7c1a145c346241df048c0525de11580b3c45c756
Author: liufqing <82146488+liufqing@users.noreply.github.com>
Date: Thu Sep 30 15:18:04 2021 +0800
add resnet34 (#741)
* hello
* add resnet34
commit 9fefbed77f2f8166cacc9d4063102072f501e653
Author: Armassarion <33727511+Armassarion@users
USB摄像头实时检测
要修改代码,我这里用的是大佬们写好的,直接复制张贴就能跑。
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cat ../yolov5.cpp
#include<iostream>
#include<chrono>
#include"cuda_utils.h"
#include"logging.h"
#include"common.hpp"
#include"utils.h"
#include"calibrator.h"
#define USE_FP16// set USE_INT8 or USE_FP16 or USE_FP32
#define DEVICE 0// GPU id
#define NMS_THRESH 0.4
#define CONF_THRESH 0.5
#define BATCH_SIZE 1// stuff we know about the network and the input/output blobs
static const int INPUT_H = Yolo::INPUT_H;
static const int INPUT_W = Yolo::INPUT_W;
static const int CLASS_NUM = Yolo::CLASS_NUM;
static const int OUTPUT_SIZE = Yolo::MAX_OUTPUT_BBOX_COUNT *sizeof(Yolo::Detection)/sizeof(float)+1;// we assume the yololayer outputs no more than MAX_OUTPUT_BBOX_COUNT boxes that conf >= 0.1
const char* INPUT_BLOB_NAME ="data";
const char* OUTPUT_BLOB_NAME ="prob";
static Logger gLogger;// 数据集所有类别名称
char* my_classes[]={"person","bicycle","car","motorcycle","airplane","bus","train","truck","boat","traffic light","fire hydrant","stop sign","parking meter","bench","bird","cat","dog","horse","sheep","cow","elephant","bear","zebra","giraffe","backpack","umbrella","handbag","tie","suitcase","frisbee","skis","snowboard","sports ball","kite","baseball bat","baseball glove","skateboard","surfboard","tennis racket","bottle","wine glass","cup","fork","knife","spoon","bowl","banana","apple","sandwich","orange","broccoli","carrot","hot dog","pizza","donut","cake","chair","couch","potted plant","bed","dining table","toilet","tv","laptop","mouse","remote","keyboard","cell phone","microwave","oven","toaster","sink","refrigerator","book","clock","vase","scissors","teddy bear","hair drier","toothbrush"};
static int get_width(int x,float gw,int divisor =8){//return math.ceil(x / divisor) * divisor
if(int(x * gw)% divisor ==0){return int(x * gw);}
return (int(x * gw / divisor)+1)* divisor;
}
static int get_depth(int x,float gd){
if(x ==1){return 1;}
else{
return round(x * gd)>1?round(x * gd):1;}
}
ICudaEngine*build_engine(unsigned int maxBatchSize, IBuilder* builder, IBuilderConfig* config, DataType dt,float& gd,float& gw, std::string& wts_name){
INetworkDefinition* network = builder->createNetworkV2(0U);
// Create input tensor of shape {3, INPUT_H, INPUT_W} with name INPUT_BLOB_NAME
ITensor* data = network->addInput(INPUT_BLOB_NAME, dt, Dims3{3, INPUT_H, INPUT_W });assert(data);
std::map<std::string, Weights> weightMap =loadWeights(wts_name);
/* ------ yolov5 backbone------ */
auto focus0 =focus(network, weightMap,*data,3,get_width(64, gw),3,"model.0");
auto conv1 =convBlock(network, weightMap,*focus0->getOutput(0),get_width(128, gw),3,2,1,"model.1");
auto bottleneck_CSP2 =C3(network, weightMap,*conv1->getOutput(0),get_width(128, gw),get_width(128, gw),get_depth(3, gd),true,1,0.5,"model.2");
auto conv3 =convBlock(network, weightMap,*bottleneck_CSP2->getOutput(0),get_width(256, gw),3,2,1,"model.3");
auto bottleneck_csp4 =C3(network, weightMap,*conv3->getOutput(0),get_width(256, gw),get_width(256, gw),get_depth(9, gd),true,1,0.5,"model.4");
auto conv5 =convBlock(network, weightMap,*bottleneck_csp4->getOutput(0),get_width(512, gw),3,2,1,"model.5");
auto bottleneck_csp6 =C3(network, weightMap,*conv5->getOutput(0),get_width(512, gw),get_width(512, gw),get_depth(9, gd),true,1,0.5,"model.6");
auto conv7 =convBlock(network, weightMap,*bottleneck_csp6->getOutput(0),get_width(1024, gw),3,2,1,"model.7");
auto spp8 =SPP(network, weightMap,*conv7->getOutput(0),get_width(1024, gw),get_width(1024, gw),5,9,13,"model.8");
/* ------ yolov5 head ------ */
auto bottleneck_csp9 =C3(network, weightMap,*spp8->getOutput(0),get_width(1024, gw),get_width(1024, gw),get_depth(3, gd),false,1,0.5,"model.9");
auto conv10 =convBlock(network, weightMap,*bottleneck_csp9->getOutput(0),get_width(512, gw),1,1,1,"model.10");
auto upsample11 = network->addResize(*conv10->getOutput(0));assert(upsample11);
upsample11->setResizeMode(ResizeMode::kNEAREST);
upsample11->setOutputDimensions(bottleneck_csp6->getOutput(0)->getDimensions());
ITensor* inputTensors12[]={ upsample11->getOutput(0), bottleneck_csp6->getOutput(0)};
auto cat12 = network->addConcatenation(inputTensors12,2);
auto bottleneck_csp13 =C3(network, weightMap,*cat12->getOutput(0),get_width(1024, gw),get_width(512, gw),get_depth(3, gd),false,1,0.5,"model.13");
auto conv14 =convBlock(network, weightMap,*bottleneck_csp13->getOutput(0),get_width(256, gw),1,1,1,"model.14");
auto upsample15 = network->addResize(*conv14->getOutput(0));assert(upsample15);
upsample15->setResizeMode(ResizeMode::kNEAREST);
upsample15->setOutputDimensions(bottleneck_csp4->getOutput(0)->getDimensions());
ITensor* inputTensors16[]={ upsample15->getOutput(0), bottleneck_csp4->getOutput(0)};
auto cat16 = network->addConcatenation(inputTensors16,2);
auto bottleneck_csp17 =C3(network, weightMap,*cat16->getOutput(0),get_width(512, gw),get_width(256, gw),get_depth(3, gd),false,1,0.5,"model.17");// yolo layer 0
IConvolutionLayer* det0 = network->addConvolutionNd(*bottleneck_csp17->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.24.m.0.weight"], weightMap["model.24.m.0.bias"]);
auto conv18 =convBlock(network, weightMap,*bottleneck_csp17->getOutput(0),get_width(256, gw),3,2,1,"model.18");
ITensor* inputTensors19[]={ conv18->getOutput(0), conv14->getOutput(0)};
auto cat19 = network->addConcatenation(inputTensors19,2);
auto bottleneck_csp20 =C3(network, weightMap,*cat19->getOutput(0),get_width(512, gw),get_width(512, gw),get_depth(3, gd),false,1,0.5,"model.20");//yolo layer 1
IConvolutionLayer* det1 = network->addConvolutionNd(*bottleneck_csp20->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.24.m.1.weight"], weightMap["model.24.m.1.bias"]);
auto conv21 =convBlock(network, weightMap,*bottleneck_csp20->getOutput(0),get_width(512, gw),3,2,1,"model.21");
ITensor* inputTensors22[]={ conv21->getOutput(0), conv10->getOutput(0)};
auto cat22 = network->addConcatenation(inputTensors22,2);
auto bottleneck_csp23 =C3(network, weightMap,*cat22->getOutput(0),get_width(1024, gw),get_width(1024, gw),get_depth(3, gd),false,1,0.5,"model.23");
IConvolutionLayer* det2 = network->addConvolutionNd(*bottleneck_csp23->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.24.m.2.weight"], weightMap["model.24.m.2.bias"]);
auto yolo =addYoLoLayer(network, weightMap,"model.24", std::vector<IConvolutionLayer*>{det0, det1, det2});
yolo->getOutput(0)->setName(OUTPUT_BLOB_NAME);
network->markOutput(*yolo->getOutput(0));
// Build engine
builder->setMaxBatchSize(maxBatchSize);
config->setMaxWorkspaceSize(16*(1<<20));// 16MB
#if defined(USE_FP16)
config->setFlag(BuilderFlag::kFP16);
#elif defined(USE_INT8)
std::cout <<"Your platform support int8: "<<(builder->platformHasFastInt8()?"true":"false")<< std::endl;
assert(builder->platformHasFastInt8());
config->setFlag(BuilderFlag::kINT8);
Int8EntropyCalibrator2* calibrator =newInt8EntropyCalibrator2(1, INPUT_W, INPUT_H,"./coco_calib/","int8calib.table", INPUT_BLOB_NAME);
config->setInt8Calibrator(calibrator);
#endif
std::cout <<"Building engine, please wait for a while..."<< std::endl;
ICudaEngine* engine = builder->buildEngineWithConfig(*network,*config);
std::cout <<"Build engine successfully!"<< std::endl;
// Don't need the network any more
network->destroy();
// Release host memory
for(auto& mem : weightMap)
{
free((void*)(mem.second.values));
}
return engine;
}
ICudaEngine*build_engine_p6(unsigned int maxBatchSize, IBuilder* builder, IBuilderConfig* config, DataType dt,float& gd,float& gw, std::string& wts_name){
INetworkDefinition* network = builder->createNetworkV2(0U);
// Create input tensor of shape {3, INPUT_H, INPUT_W} with name INPUT_BLOB_NAME
ITensor* data = network->addInput(INPUT_BLOB_NAME, dt, Dims3{3, INPUT_H, INPUT_W });assert(data);
std::map<std::string, Weights> weightMap =loadWeights(wts_name);
/* ------ yolov5 backbone------ */
auto focus0 =focus(network, weightMap,*data,3,get_width(64, gw),3,"model.0");
auto conv1 =convBlock(network, weightMap,*focus0->getOutput(0),get_width(128, gw),3,2,1,"model.1");
auto c3_2 =C3(network, weightMap,*conv1->getOutput(0),get_width(128, gw),get_width(128, gw),get_depth(3, gd),true,1,0.5,"model.2");
auto conv3 =convBlock(network, weightMap,*c3_2->getOutput(0),get_width(256, gw),3,2,1,"model.3");
auto c3_4 =C3(network, weightMap,*conv3->getOutput(0),get_width(256, gw),get_width(256, gw),get_depth(9, gd),true,1,0.5,"model.4");
auto conv5 =convBlock(network, weightMap,*c3_4->getOutput(0),get_width(512, gw),3,2,1,"model.5");
auto c3_6 =C3(network, weightMap,*conv5->getOutput(0),get_width(512, gw),get_width(512, gw),get_depth(9, gd),true,1,0.5,"model.6");
auto conv7 =convBlock(network, weightMap,*c3_6->getOutput(0),get_width(768, gw),3,2,1,"model.7");
auto c3_8 =C3(network, weightMap,*conv7->getOutput(0),get_width(768, gw),get_width(768, gw),get_depth(3, gd),true,1,0.5,"model.8");
auto conv9 =convBlock(network, weightMap,*c3_8->getOutput(0),get_width(1024, gw),3,2,1,"model.9");
auto spp10 =SPP(network, weightMap,*conv9->getOutput(0),get_width(1024, gw),get_width(1024, gw),3,5,7,"model.10");
auto c3_11 =C3(network, weightMap,*spp10->getOutput(0),get_width(1024, gw),get_width(1024, gw),get_depth(3, gd),false,1,0.5,"model.11");
/* ------ yolov5 head ------ */
auto conv12 =convBlock(network, weightMap,*c3_11->getOutput(0),get_width(768, gw),1,1,1,"model.12");
auto upsample13 = network->addResize(*conv12->getOutput(0));assert(upsample13);
upsample13->setResizeMode(ResizeMode::kNEAREST);
upsample13->setOutputDimensions(c3_8->getOutput(0)->getDimensions());
ITensor* inputTensors14[]={ upsample13->getOutput(0), c3_8->getOutput(0)};
auto cat14 = network->addConcatenation(inputTensors14,2);
auto c3_15 =C3(network, weightMap,*cat14->getOutput(0),get_width(1536, gw),get_width(768, gw),get_depth(3, gd),false,1,0.5,"model.15");
auto conv16 =convBlock(network, weightMap,*c3_15->getOutput(0),get_width(512, gw),1,1,1,"model.16");
auto upsample17 = network->addResize(*conv16->getOutput(0));assert(upsample17);
upsample17->setResizeMode(ResizeMode::kNEAREST);
upsample17->setOutputDimensions(c3_6->getOutput(0)->getDimensions());
ITensor* inputTensors18[]={ upsample17->getOutput(0), c3_6->getOutput(0)};
auto cat18 = network->addConcatenation(inputTensors18,2);
auto c3_19 =C3(network, weightMap,*cat18->getOutput(0),get_width(1024, gw),get_width(512, gw),get_depth(3, gd),false,1,0.5,"model.19");
auto conv20 =convBlock(network, weightMap,*c3_19->getOutput(0),get_width(256, gw),1,1,1,"model.20");
auto upsample21 = network->addResize(*conv20->getOutput(0));assert(upsample21);
upsample21->setResizeMode(ResizeMode::kNEAREST);
upsample21->setOutputDimensions(c3_4->getOutput(0)->getDimensions());
ITensor* inputTensors21[]={ upsample21->getOutput(0), c3_4->getOutput(0)};
auto cat22 = network->addConcatenation(inputTensors21,2);
auto c3_23 =C3(network, weightMap,*cat22->getOutput(0),get_width(512, gw),get_width(256, gw),get_depth(3, gd),false,1,0.5,"model.23");
auto conv24 =convBlock(network, weightMap,*c3_23->getOutput(0),get_width(256, gw),3,2,1,"model.24");
ITensor* inputTensors25[]={ conv24->getOutput(0), conv20->getOutput(0)};
auto cat25 = network->addConcatenation(inputTensors25,2);
auto c3_26 =C3(network, weightMap,*cat25->getOutput(0),get_width(1024, gw),get_width(512, gw),get_depth(3, gd),false,1,0.5,"model.26");
auto conv27 =convBlock(network, weightMap,*c3_26->getOutput(0),get_width(512, gw),3,2,1,"model.27");
ITensor* inputTensors28[]={ conv27->getOutput(0), conv16->getOutput(0)};
auto cat28 = network->addConcatenation(inputTensors28,2);
auto c3_29 =C3(network, weightMap,*cat28->getOutput(0),get_width(1536, gw),get_width(768, gw),get_depth(3, gd),false,1,0.5,"model.29");
auto conv30 =convBlock(network, weightMap,*c3_29->getOutput(0),get_width(768, gw),3,2,1,"model.30");
ITensor* inputTensors31[]={ conv30->getOutput(0), conv12->getOutput(0)};
auto cat31 = network->addConcatenation(inputTensors31,2);
auto c3_32 =C3(network, weightMap,*cat31->getOutput(0),get_width(2048, gw),get_width(1024, gw),get_depth(3, gd),false,1,0.5,"model.32");
/* ------ detect ------ */
IConvolutionLayer* det0 = network->addConvolutionNd(*c3_23->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.33.m.0.weight"], weightMap["model.33.m.0.bias"]);
IConvolutionLayer* det1 = network->addConvolutionNd(*c3_26->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.33.m.1.weight"], weightMap["model.33.m.1.bias"]);
IConvolutionLayer* det2 = network->addConvolutionNd(*c3_29->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.33.m.2.weight"], weightMap["model.33.m.2.bias"]);
IConvolutionLayer* det3 = network->addConvolutionNd(*c3_32->getOutput(0),3*(Yolo::CLASS_NUM +5), DimsHW{1,1}, weightMap["model.33.m.3.weight"], weightMap["model.33.m.3.bias"]);
auto yolo =addYoLoLayer(network, weightMap,"model.33", std::vector<IConvolutionLayer*>{det0, det1, det2, det3});
yolo->getOutput(0)->setName(OUTPUT_BLOB_NAME);
network->markOutput(*yolo->getOutput(0));
// Build engine
builder->setMaxBatchSize(maxBatchSize);
config->setMaxWorkspaceSize(16*(1<<20));// 16MB
#if defined(USE_FP16)
config->setFlag(BuilderFlag::kFP16);
#elif defined(USE_INT8)
std::cout <<"Your platform support int8: "<<(builder->platformHasFastInt8()?"true":"false")<< std::endl;assert(builder->platformHasFastInt8());
config->setFlag(BuilderFlag::kINT8);
Int8EntropyCalibrator2* calibrator =newInt8EntropyCalibrator2(1, INPUT_W, INPUT_H,"./coco_calib/","int8calib.table", INPUT_BLOB_NAME);
config->setInt8Calibrator(calibrator);
#endif
std::cout <<"Building engine, please wait for a while..."<< std::endl;
ICudaEngine* engine = builder->buildEngineWithConfig(*network,*config);
std::cout <<"Build engine successfully!"<< std::endl;
// Don't need the network any more
network->destroy();
// Release host memory
for(auto& mem : weightMap)
{
free((void*)(mem.second.values));
}
return engine;
}
void APIToModel(unsigned int maxBatchSize, IHostMemory** modelStream,float& gd,float& gw, std::string& wts_name){// Create builder
IBuilder* builder =createInferBuilder(gLogger);
IBuilderConfig* config = builder->createBuilderConfig();
// Create model to populate the network, then set the outputs and create an engine
ICudaEngine* engine =build_engine(maxBatchSize, builder, config, DataType::kFLOAT, gd, gw, wts_name);
assert(engine !=nullptr);// Serialize the engine(*modelStream)= engine->serialize();// Close everything down
engine->destroy();
builder->destroy();
config->destroy();}
void doInference(IExecutionContext& context, cudaStream_t& stream,void** buffers,float* input,float* output,int batchSize){
// DMA input batch data to device, infer on the batch asynchronously, and DMA output back to host
CUDA_CHECK(cudaMemcpyAsync(buffers[0], input, batchSize *3* INPUT_H * INPUT_W *sizeof(float), cudaMemcpyHostToDevice, stream));
context.enqueue(batchSize, buffers, stream,nullptr);
CUDA_CHECK(cudaMemcpyAsync(output, buffers[1], batchSize * OUTPUT_SIZE *sizeof(float), cudaMemcpyDeviceToHost, stream));
cudaStreamSynchronize(stream);}
bool parse_args(int argc,char** argv, std::string& engine){
if(argc <3)
return false;
if(std::string(argv[1])=="-v"&& argc ==3){
engine = std::string(argv[2]);
}else{return false;}
return true;}
int main(int argc,char** argv){
cudaSetDevice(DEVICE);//
std::string wts_name = "";
std::string engine_name = "";//float gd = 0.0f, gw = 0.0f;//
std::string img_dir;if(!parse_args(argc, argv, engine_name)){
std::cerr <<"arguments not right!"<< std::endl;
std::cerr <<"./yolov5 -v [.engine] // run inference with camera"<< std::endl;
return-1;}
std::ifstream file(engine_name, std::ios::binary);
if(!file.good()){
std::cerr <<" read "<< engine_name <<" error! "<< std::endl;return-1;}char* trtModelStream{nullptr};
size_t size =0;
file.seekg(0, file.end);
size = file.tellg();
file.seekg(0, file.beg);
trtModelStream =new char[size];assert(trtModelStream);
file.read(trtModelStream, size);
file.close();// prepare input data ---------------------------
static float data[BATCH_SIZE *3* INPUT_H * INPUT_W];//for (int i = 0; i < 3 * INPUT_H * INPUT_W; i++)// data[i] = 1.0;
static float prob[BATCH_SIZE * OUTPUT_SIZE];
IRuntime* runtime =createInferRuntime(gLogger);assert(runtime !=nullptr);
ICudaEngine* engine = runtime->deserializeCudaEngine(trtModelStream, size);assert(engine !=nullptr);
IExecutionContext* context = engine->createExecutionContext();assert(context !=nullptr);delete[] trtModelStream;assert(engine->getNbBindings()==2);
void* buffers[2];
// In order to bind the buffers, we need to know the names of the input and output tensors.
// Note that indices are guaranteed to be less than IEngine::getNbBindings()
const int inputIndex = engine->getBindingIndex(INPUT_BLOB_NAME);
const int outputIndex = engine->getBindingIndex(OUTPUT_BLOB_NAME);
assert(inputIndex ==0);
assert(outputIndex ==1);// Create GPU buffers on device
CUDA_CHECK(cudaMalloc(&buffers[inputIndex], BATCH_SIZE *3* INPUT_H * INPUT_W *sizeof(float)));
CUDA_CHECK(cudaMalloc(&buffers[outputIndex], BATCH_SIZE * OUTPUT_SIZE *sizeof(float)));// Create stream
cudaStream_t stream;CUDA_CHECK(cudaStreamCreate(&stream));// 调用摄像头编号
cv::VideoCapture capture(0);//cv::VideoCapture capture("../overpass.mp4");//int fourcc = cv::VideoWriter::fourcc('M','J','P','G');//capture.set(cv::CAP_PROP_FOURCC, fourcc);
if(!capture.isOpened()){
std::cout <<"Error opening video stream or file"<< std::endl;return-1;}
int key;
int fcount =0;
while(1){
cv::Mat frame;
capture >> frame;if(frame.empty()){
std::cout <<"Fail to read image from camera!"<< std::endl;break;}
fcount++;//if (fcount < BATCH_SIZE && f + 1 != (int)file_names.size()) continue;
for(int b =0; b < fcount; b++){//cv::Mat img = cv::imread(img_dir + "/" + file_names[f - fcount + 1 + b]);
cv::Mat img = frame;
if(img.empty())continue;
cv::Mat pr_img =preprocess_img(img, INPUT_W, INPUT_H);// letterbox BGR to RGB
int i =0;for(int row =0; row < INPUT_H;++row){
uchar* uc_pixel = pr_img.data + row * pr_img.step;for(int col =0; col < INPUT_W;++col){
data[b *3* INPUT_H * INPUT_W + i]=(float)uc_pixel[2]/255.0;
data[b *3* INPUT_H * INPUT_W + i + INPUT_H * INPUT_W]=(float)uc_pixel[1]/255.0;
data[b *3* INPUT_H * INPUT_W + i +2* INPUT_H * INPUT_W]=(float)uc_pixel[0]/255.0;
uc_pixel +=3;++i;}}}
// Run inference
auto start = std::chrono::system_clock::now();
doInference(*context, stream, buffers, data, prob, BATCH_SIZE);
auto end = std::chrono::system_clock::now();// std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count() << "ms" << std::endl;
int fps =1000.0/ std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count();
std::cout <<"fps: "<< fps << std::endl;
std::vector<std::vector<Yolo::Detection>>batch_res(fcount);
for(int b =0; b < fcount; b++){
auto& res = batch_res[b];
nms(res,&prob[b * OUTPUT_SIZE], CONF_THRESH, NMS_THRESH);
}
for(int b =0; b < fcount; b++){
auto& res = batch_res[b];//std::cout << res.size() << std::endl;//cv::Mat img = cv::imread(img_dir + "/" + file_names[f - fcount + 1 + b]);
for(size_t j =0; j < res.size(); j++){
cv::Rect r =get_rect(frame, res[j].bbox);
cv::rectangle(frame, r, cv::Scalar(0x27,0xC1,0x36),6);
std::string label = my_classes[(int)res[j].class_id];
cv::putText(frame, label, cv::Point(r.x, r.y -1), cv::FONT_HERSHEY_PLAIN,2, cv::Scalar(0xFF,0xFF,0xFF),2);
std::string jetson_fps ="Jetson Xavier NX FPS: "+ std::to_string(fps);
cv::putText(frame, jetson_fps, cv::Point(11,80), cv::FONT_HERSHEY_PLAIN,3, cv::Scalar(0,0,255),2, cv::LINE_AA);}//cv::imwrite("_" + file_names[f - fcount + 1 + b], img);}
cv::imshow("yolov5", frame);
key = cv::waitKey(1);if(key =='q'){break;}
fcount =0;}}
capture.release();// Release stream and bufferscudaStreamDestroy(stream);CUDA_CHECK(cudaFree(buffers[inputIndex]));CUDA_CHECK(cudaFree(buffers[outputIndex]));// Destroy the engine
context->destroy();
engine->destroy();
runtime->destroy();return 0;}
make -j6
sudo ./yolov5 -v yolov5s.engine
sudo ./yolov5 -v best.engine
还有就是在原来的基础上加内容,命令还是用旧的
./yolov5 -d yolov5s.engine ../samples
nvidia@nvidia-desktop:~/yolov5/tensorrtx/yolov5/build$ cat ../yolov5.cpp
#include <iostream>
#include <chrono>
#include <cmath>
#include "cuda_utils.h"
#include "logging.h"
#include "common.hpp"
#include "utils.h"
#include "calibrator.h"
#define USE_FP16 // set USE_INT8 or USE_FP16 or USE_FP32
#define DEVICE 0 // GPU id
#define NMS_THRESH 0.4
#define CONF_THRESH 0.5
#define BATCH_SIZE 1
// stuff we know about the network and the input/output blobs
static const int INPUT_H = Yolo::INPUT_H;
static const int INPUT_W = Yolo::INPUT_W;
static const int CLASS_NUM = Yolo::CLASS_NUM;
static const int OUTPUT_SIZE = Yolo::MAX_OUTPUT_BBOX_COUNT * sizeof(Yolo::Detection) / sizeof(float) + 1; // we assume the yololayer outputs no more than MAX_OUTPUT_BBOX_COUNT boxes that conf >= 0.1
const char* INPUT_BLOB_NAME = "data";
const char* OUTPUT_BLOB_NAME = "prob";
static Logger gLogger;
char* my_classes[]={"person","bicycle","car","motorcycle","airplane","bus","train","truck","boat","traffic light","fire hydrant","stop sign","parking meter","bench","bird","cat","dog","horse","sheep","cow","elephant","bear","zebra","giraffe","backpack","umbrella","handbag","tie","suitcase","frisbee","skis","snowboard","sports ball","kite","baseball bat","baseball glove","skateboard","surfboard","tennis racket","bottle","wine glass","cup","fork","knife","spoon","bowl","banana","apple","sandwich","orange","broccoli","carrot","hot dog","pizza","donut","cake","chair","couch","potted plant","bed","dining table","toilet","tv","laptop","mouse","remote","keyboard","cell phone","microwave","oven","toaster","sink","refrigerator","book","clock","vase","scissors","teddy bear","hair drier","toothbrush"};
static int get_width(int x, float gw, int divisor = 8) {
return int(ceil((x * gw) / divisor)) * divisor;
}
static int get_depth(int x, float gd) {
if (x == 1) return 1;
int r = round(x * gd);
if (x * gd - int(x * gd) == 0.5 && (int(x * gd) % 2) == 0) {
--r;
}
return std::max<int>(r, 1);
}
ICudaEngine* build_engine(unsigned int maxBatchSize, IBuilder* builder, IBuilderConfig* config, DataType dt, float& gd, float& gw, std::string& wts_name) {
INetworkDefinition* network = builder->createNetworkV2(0U);
// Create input tensor of shape {3, INPUT_H, INPUT_W} with name INPUT_BLOB_NAME
ITensor* data = network->addInput(INPUT_BLOB_NAME, dt, Dims3{ 3, INPUT_H, INPUT_W });
assert(data);
std::map<std::string, Weights> weightMap = loadWeights(wts_name);
/* ------ yolov5 backbone------ */
auto focus0 = focus(network, weightMap, *data, 3, get_width(64, gw), 3, "model.0");
auto conv1 = convBlock(network, weightMap, *focus0->getOutput(0), get_width(128, gw), 3, 2, 1, "model.1");
auto bottleneck_CSP2 = C3(network, weightMap, *conv1->getOutput(0), get_width(128, gw), get_width(128, gw), get_depth(3, gd), true, 1, 0.5, "model.2");
auto conv3 = convBlock(network, weightMap, *bottleneck_CSP2->getOutput(0), get_width(256, gw), 3, 2, 1, "model.3");
auto bottleneck_csp4 = C3(network, weightMap, *conv3->getOutput(0), get_width(256, gw), get_width(256, gw), get_depth(9, gd), true, 1, 0.5, "model.4");
auto conv5 = convBlock(network, weightMap, *bottleneck_csp4->getOutput(0), get_width(512, gw), 3, 2, 1, "model.5");
auto bottleneck_csp6 = C3(network, weightMap, *conv5->getOutput(0), get_width(512, gw), get_width(512, gw), get_depth(9, gd), true, 1, 0.5, "model.6");
auto conv7 = convBlock(network, weightMap, *bottleneck_csp6->getOutput(0), get_width(1024, gw), 3, 2, 1, "model.7");
auto spp8 = SPP(network, weightMap, *conv7->getOutput(0), get_width(1024, gw), get_width(1024, gw), 5, 9, 13, "model.8");
/* ------ yolov5 head ------ */
auto bottleneck_csp9 = C3(network, weightMap, *spp8->getOutput(0), get_width(1024, gw), get_width(1024, gw), get_depth(3, gd), false, 1, 0.5, "model.9");
auto conv10 = convBlock(network, weightMap, *bottleneck_csp9->getOutput(0), get_width(512, gw), 1, 1, 1, "model.10");
auto upsample11 = network->addResize(*conv10->getOutput(0));
assert(upsample11);
upsample11->setResizeMode(ResizeMode::kNEAREST);
upsample11->setOutputDimensions(bottleneck_csp6->getOutput(0)->getDimensions());
ITensor* inputTensors12[] = { upsample11->getOutput(0), bottleneck_csp6->getOutput(0) };
auto cat12 = network->addConcatenation(inputTensors12, 2);
auto bottleneck_csp13 = C3(network, weightMap, *cat12->getOutput(0), get_width(1024, gw), get_width(512, gw), get_depth(3, gd), false, 1, 0.5, "model.13");
auto conv14 = convBlock(network, weightMap, *bottleneck_csp13->getOutput(0), get_width(256, gw), 1, 1, 1, "model.14");
auto upsample15 = network->addResize(*conv14->getOutput(0));
assert(upsample15);
upsample15->setResizeMode(ResizeMode::kNEAREST);
upsample15->setOutputDimensions(bottleneck_csp4->getOutput(0)->getDimensions());
ITensor* inputTensors16[] = { upsample15->getOutput(0), bottleneck_csp4->getOutput(0) };
auto cat16 = network->addConcatenation(inputTensors16, 2);
auto bottleneck_csp17 = C3(network, weightMap, *cat16->getOutput(0), get_width(512, gw), get_width(256, gw), get_depth(3, gd), false, 1, 0.5, "model.17");
/* ------ detect ------ */
IConvolutionLayer* det0 = network->addConvolutionNd(*bottleneck_csp17->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.24.m.0.weight"], weightMap["model.24.m.0.bias"]);
auto conv18 = convBlock(network, weightMap, *bottleneck_csp17->getOutput(0), get_width(256, gw), 3, 2, 1, "model.18");
ITensor* inputTensors19[] = { conv18->getOutput(0), conv14->getOutput(0) };
auto cat19 = network->addConcatenation(inputTensors19, 2);
auto bottleneck_csp20 = C3(network, weightMap, *cat19->getOutput(0), get_width(512, gw), get_width(512, gw), get_depth(3, gd), false, 1, 0.5, "model.20");
IConvolutionLayer* det1 = network->addConvolutionNd(*bottleneck_csp20->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.24.m.1.weight"], weightMap["model.24.m.1.bias"]);
auto conv21 = convBlock(network, weightMap, *bottleneck_csp20->getOutput(0), get_width(512, gw), 3, 2, 1, "model.21");
ITensor* inputTensors22[] = { conv21->getOutput(0), conv10->getOutput(0) };
auto cat22 = network->addConcatenation(inputTensors22, 2);
auto bottleneck_csp23 = C3(network, weightMap, *cat22->getOutput(0), get_width(1024, gw), get_width(1024, gw), get_depth(3, gd), false, 1, 0.5, "model.23");
IConvolutionLayer* det2 = network->addConvolutionNd(*bottleneck_csp23->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.24.m.2.weight"], weightMap["model.24.m.2.bias"]);
auto yolo = addYoLoLayer(network, weightMap, "model.24", std::vector<IConvolutionLayer*>{det0, det1, det2});
yolo->getOutput(0)->setName(OUTPUT_BLOB_NAME);
network->markOutput(*yolo->getOutput(0));
// Build engine
builder->setMaxBatchSize(maxBatchSize);
config->setMaxWorkspaceSize(16 * (1 << 20)); // 16MB
#if defined(USE_FP16)
config->setFlag(BuilderFlag::kFP16);
#elif defined(USE_INT8)
std::cout << "Your platform support int8: " << (builder->platformHasFastInt8() ? "true" : "false") << std::endl;
assert(builder->platformHasFastInt8());
config->setFlag(BuilderFlag::kINT8);
Int8EntropyCalibrator2* calibrator = new Int8EntropyCalibrator2(1, INPUT_W, INPUT_H, "./coco_calib/", "int8calib.table", INPUT_BLOB_NAME);
config->setInt8Calibrator(calibrator);
#endif
std::cout << "Building engine, please wait for a while..." << std::endl;
ICudaEngine* engine = builder->buildEngineWithConfig(*network, *config);
std::cout << "Build engine successfully!" << std::endl;
// Don't need the network any more
network->destroy();
// Release host memory
for (auto& mem : weightMap)
{
free((void*)(mem.second.values));
}
return engine;
}
ICudaEngine* build_engine_p6(unsigned int maxBatchSize, IBuilder* builder, IBuilderConfig* config, DataType dt, float& gd, float& gw, std::string& wts_name) {
INetworkDefinition* network = builder->createNetworkV2(0U);
// Create input tensor of shape {3, INPUT_H, INPUT_W} with name INPUT_BLOB_NAME
ITensor* data = network->addInput(INPUT_BLOB_NAME, dt, Dims3{ 3, INPUT_H, INPUT_W });
assert(data);
std::map<std::string, Weights> weightMap = loadWeights(wts_name);
/* ------ yolov5 backbone------ */
auto focus0 = focus(network, weightMap, *data, 3, get_width(64, gw), 3, "model.0");
auto conv1 = convBlock(network, weightMap, *focus0->getOutput(0), get_width(128, gw), 3, 2, 1, "model.1");
auto c3_2 = C3(network, weightMap, *conv1->getOutput(0), get_width(128, gw), get_width(128, gw), get_depth(3, gd), true, 1, 0.5, "model.2");
auto conv3 = convBlock(network, weightMap, *c3_2->getOutput(0), get_width(256, gw), 3, 2, 1, "model.3");
auto c3_4 = C3(network, weightMap, *conv3->getOutput(0), get_width(256, gw), get_width(256, gw), get_depth(9, gd), true, 1, 0.5, "model.4");
auto conv5 = convBlock(network, weightMap, *c3_4->getOutput(0), get_width(512, gw), 3, 2, 1, "model.5");
auto c3_6 = C3(network, weightMap, *conv5->getOutput(0), get_width(512, gw), get_width(512, gw), get_depth(9, gd), true, 1, 0.5, "model.6");
auto conv7 = convBlock(network, weightMap, *c3_6->getOutput(0), get_width(768, gw), 3, 2, 1, "model.7");
auto c3_8 = C3(network, weightMap, *conv7->getOutput(0), get_width(768, gw), get_width(768, gw), get_depth(3, gd), true, 1, 0.5, "model.8");
auto conv9 = convBlock(network, weightMap, *c3_8->getOutput(0), get_width(1024, gw), 3, 2, 1, "model.9");
auto spp10 = SPP(network, weightMap, *conv9->getOutput(0), get_width(1024, gw), get_width(1024, gw), 3, 5, 7, "model.10");
auto c3_11 = C3(network, weightMap, *spp10->getOutput(0), get_width(1024, gw), get_width(1024, gw), get_depth(3, gd), false, 1, 0.5, "model.11");
/* ------ yolov5 head ------ */
auto conv12 = convBlock(network, weightMap, *c3_11->getOutput(0), get_width(768, gw), 1, 1, 1, "model.12");
auto upsample13 = network->addResize(*conv12->getOutput(0));
assert(upsample13);
upsample13->setResizeMode(ResizeMode::kNEAREST);
upsample13->setOutputDimensions(c3_8->getOutput(0)->getDimensions());
ITensor* inputTensors14[] = { upsample13->getOutput(0), c3_8->getOutput(0) };
auto cat14 = network->addConcatenation(inputTensors14, 2);
auto c3_15 = C3(network, weightMap, *cat14->getOutput(0), get_width(1536, gw), get_width(768, gw), get_depth(3, gd), false, 1, 0.5, "model.15");
auto conv16 = convBlock(network, weightMap, *c3_15->getOutput(0), get_width(512, gw), 1, 1, 1, "model.16");
auto upsample17 = network->addResize(*conv16->getOutput(0));
assert(upsample17);
upsample17->setResizeMode(ResizeMode::kNEAREST);
upsample17->setOutputDimensions(c3_6->getOutput(0)->getDimensions());
ITensor* inputTensors18[] = { upsample17->getOutput(0), c3_6->getOutput(0) };
auto cat18 = network->addConcatenation(inputTensors18, 2);
auto c3_19 = C3(network, weightMap, *cat18->getOutput(0), get_width(1024, gw), get_width(512, gw), get_depth(3, gd), false, 1, 0.5, "model.19");
auto conv20 = convBlock(network, weightMap, *c3_19->getOutput(0), get_width(256, gw), 1, 1, 1, "model.20");
auto upsample21 = network->addResize(*conv20->getOutput(0));
assert(upsample21);
upsample21->setResizeMode(ResizeMode::kNEAREST);
upsample21->setOutputDimensions(c3_4->getOutput(0)->getDimensions());
ITensor* inputTensors21[] = { upsample21->getOutput(0), c3_4->getOutput(0) };
auto cat22 = network->addConcatenation(inputTensors21, 2);
auto c3_23 = C3(network, weightMap, *cat22->getOutput(0), get_width(512, gw), get_width(256, gw), get_depth(3, gd), false, 1, 0.5, "model.23");
auto conv24 = convBlock(network, weightMap, *c3_23->getOutput(0), get_width(256, gw), 3, 2, 1, "model.24");
ITensor* inputTensors25[] = { conv24->getOutput(0), conv20->getOutput(0) };
auto cat25 = network->addConcatenation(inputTensors25, 2);
auto c3_26 = C3(network, weightMap, *cat25->getOutput(0), get_width(1024, gw), get_width(512, gw), get_depth(3, gd), false, 1, 0.5, "model.26");
auto conv27 = convBlock(network, weightMap, *c3_26->getOutput(0), get_width(512, gw), 3, 2, 1, "model.27");
ITensor* inputTensors28[] = { conv27->getOutput(0), conv16->getOutput(0) };
auto cat28 = network->addConcatenation(inputTensors28, 2);
auto c3_29 = C3(network, weightMap, *cat28->getOutput(0), get_width(1536, gw), get_width(768, gw), get_depth(3, gd), false, 1, 0.5, "model.29");
auto conv30 = convBlock(network, weightMap, *c3_29->getOutput(0), get_width(768, gw), 3, 2, 1, "model.30");
ITensor* inputTensors31[] = { conv30->getOutput(0), conv12->getOutput(0) };
auto cat31 = network->addConcatenation(inputTensors31, 2);
auto c3_32 = C3(network, weightMap, *cat31->getOutput(0), get_width(2048, gw), get_width(1024, gw), get_depth(3, gd), false, 1, 0.5, "model.32");
/* ------ detect ------ */
IConvolutionLayer* det0 = network->addConvolutionNd(*c3_23->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.33.m.0.weight"], weightMap["model.33.m.0.bias"]);
IConvolutionLayer* det1 = network->addConvolutionNd(*c3_26->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.33.m.1.weight"], weightMap["model.33.m.1.bias"]);
IConvolutionLayer* det2 = network->addConvolutionNd(*c3_29->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.33.m.2.weight"], weightMap["model.33.m.2.bias"]);
IConvolutionLayer* det3 = network->addConvolutionNd(*c3_32->getOutput(0), 3 * (Yolo::CLASS_NUM + 5), DimsHW{ 1, 1 }, weightMap["model.33.m.3.weight"], weightMap["model.33.m.3.bias"]);
auto yolo = addYoLoLayer(network, weightMap, "model.33", std::vector<IConvolutionLayer*>{det0, det1, det2, det3});
yolo->getOutput(0)->setName(OUTPUT_BLOB_NAME);
network->markOutput(*yolo->getOutput(0));
// Build engine
builder->setMaxBatchSize(maxBatchSize);
config->setMaxWorkspaceSize(16 * (1 << 20)); // 16MB
#if defined(USE_FP16)
config->setFlag(BuilderFlag::kFP16);
#elif defined(USE_INT8)
std::cout << "Your platform support int8: " << (builder->platformHasFastInt8() ? "true" : "false") << std::endl;
assert(builder->platformHasFastInt8());
config->setFlag(BuilderFlag::kINT8);
Int8EntropyCalibrator2* calibrator = new Int8EntropyCalibrator2(1, INPUT_W, INPUT_H, "./coco_calib/", "int8calib.table", INPUT_BLOB_NAME);
config->setInt8Calibrator(calibrator);
#endif
std::cout << "Building engine, please wait for a while..." << std::endl;
ICudaEngine* engine = builder->buildEngineWithConfig(*network, *config);
std::cout << "Build engine successfully!" << std::endl;
// Don't need the network any more
network->destroy();
// Release host memory
for (auto& mem : weightMap)
{
free((void*)(mem.second.values));
}
return engine;
}
void APIToModel(unsigned int maxBatchSize, IHostMemory** modelStream, bool& is_p6, float& gd, float& gw, std::string& wts_name) {
// Create builder
IBuilder* builder = createInferBuilder(gLogger);
IBuilderConfig* config = builder->createBuilderConfig();
// Create model to populate the network, then set the outputs and create an engine
ICudaEngine *engine = nullptr;
if (is_p6) {
engine = build_engine_p6(maxBatchSize, builder, config, DataType::kFLOAT, gd, gw, wts_name);
} else {
engine = build_engine(maxBatchSize, builder, config, DataType::kFLOAT, gd, gw, wts_name);
}
assert(engine != nullptr);
// Serialize the engine
(*modelStream) = engine->serialize();
// Close everything down
engine->destroy();
builder->destroy();
config->destroy();
}
void doInference(IExecutionContext& context, cudaStream_t& stream, void **buffers, float* input, float* output, int batchSize) {
// DMA input batch data to device, infer on the batch asynchronously, and DMA output back to host
CUDA_CHECK(cudaMemcpyAsync(buffers[0], input, batchSize * 3 * INPUT_H * INPUT_W * sizeof(float), cudaMemcpyHostToDevice, stream));
context.enqueue(batchSize, buffers, stream, nullptr);
CUDA_CHECK(cudaMemcpyAsync(output, buffers[1], batchSize * OUTPUT_SIZE * sizeof(float), cudaMemcpyDeviceToHost, stream));
cudaStreamSynchronize(stream);
}
bool parse_args(int argc, char** argv, std::string& wts, std::string& engine, bool& is_p6, float& gd, float& gw, std::string& img_dir) {
if (argc < 4) return false;
if (std::string(argv[1]) == "-s" && (argc == 5 || argc == 7)) {
wts = std::string(argv[2]);
engine = std::string(argv[3]);
auto net = std::string(argv[4]);
if (net[0] == 's') {
gd = 0.33;
gw = 0.50;
} else if (net[0] == 'm') {
gd = 0.67;
gw = 0.75;
} else if (net[0] == 'l') {
gd = 1.0;
gw = 1.0;
} else if (net[0] == 'x') {
gd = 1.33;
gw = 1.25;
} else if (net[0] == 'c' && argc == 7) {
gd = atof(argv[5]);
gw = atof(argv[6]);
} else {
return false;
}
if (net.size() == 2 && net[1] == '6') {
is_p6 = true;
}
} else if (std::string(argv[1]) == "-d" && argc == 4) {
engine = std::string(argv[2]);
img_dir = std::string(argv[3]);
} else {
return false;
}
return true;
}
int main(int argc, char** argv) {
cudaSetDevice(DEVICE);
std::string wts_name = "";
std::string engine_name = "";
bool is_p6 = false;
float gd = 0.0f, gw = 0.0f;
std::string img_dir;
if (!parse_args(argc, argv, wts_name, engine_name, is_p6, gd, gw, img_dir)) {
std::cerr << "arguments not right!" << std::endl;
std::cerr << "./yolov5 -s [.wts] [.engine] [s/m/l/x/s6/m6/l6/x6 or c/c6 gd gw] // serialize model to plan file" << std::endl;
std::cerr << "./yolov5 -d [.engine] ../samples // deserialize plan file and run inference" << std::endl;
return -1;
}
// create a model using the API directly and serialize it to a stream
if (!wts_name.empty()) {
IHostMemory* modelStream{ nullptr };
APIToModel(BATCH_SIZE, &modelStream, is_p6, gd, gw, wts_name);
assert(modelStream != nullptr);
std::ofstream p(engine_name, std::ios::binary);
if (!p) {
std::cerr << "could not open plan output file" << std::endl;
return -1;
}
p.write(reinterpret_cast<const char*>(modelStream->data()), modelStream->size());
modelStream->destroy();
return 0;
}
// deserialize the .engine and run inference
std::ifstream file(engine_name, std::ios::binary);
if (!file.good()) {
std::cerr << "read " << engine_name << " error!" << std::endl;
return -1;
}
char *trtModelStream = nullptr;
size_t size = 0;
file.seekg(0, file.end);
size = file.tellg();
file.seekg(0, file.beg);
trtModelStream = new char[size];
assert(trtModelStream);
file.read(trtModelStream, size);
file.close();
std::vector<std::string> file_names;
if (read_files_in_dir(img_dir.c_str(), file_names) < 0)
{
std::cerr << "read_files_in_dir failed." << std::endl;
return -1;
}
// prepare input data ---------------------------
static float data[BATCH_SIZE * 3 * INPUT_H * INPUT_W];
//for (int i = 0; i < 3 * INPUT_H * INPUT_W; i++)
// data[i] = 1.0;
static float prob[BATCH_SIZE * OUTPUT_SIZE];
IRuntime* runtime = createInferRuntime(gLogger);
assert(runtime != nullptr);
ICudaEngine* engine = runtime->deserializeCudaEngine(trtModelStream, size);
assert(engine != nullptr);
IExecutionContext* context = engine->createExecutionContext();
assert(context != nullptr);
delete[] trtModelStream;
assert(engine->getNbBindings() == 2);
void* buffers[2];
// In order to bind the buffers, we need to know the names of the input and output tensors.
// Note that indices are guaranteed to be less than IEngine::getNbBindings()
const int inputIndex = engine->getBindingIndex(INPUT_BLOB_NAME);
const int outputIndex = engine->getBindingIndex(OUTPUT_BLOB_NAME);
assert(inputIndex == 0);
assert(outputIndex == 1);
// Create GPU buffers on device
CUDA_CHECK(cudaMalloc(&buffers[inputIndex], BATCH_SIZE * 3 * INPUT_H * INPUT_W * sizeof(float)));
CUDA_CHECK(cudaMalloc(&buffers[outputIndex], BATCH_SIZE * OUTPUT_SIZE * sizeof(float)));
// Create stream
cudaStream_t stream;
CUDA_CHECK(cudaStreamCreate(&stream));
cv::VideoCapture capture(0);//cv::VideoCapture capture("../overpass.mp4");//int fourcc = cv::VideoWriter::fourcc('M','J','P','G');//capture.set(cv::CAP_PROP_FOURCC, fourcc);
if(!capture.isOpened())
{
std::cout <<"Error opening video stream or file"<< std::endl;
return-1;
}
int key;
int fcount =0;
while(1){
cv::Mat frame;
capture >> frame;if(frame.empty())
{
std::cout <<"Fail to read image from camera!"<< std::endl;
break;
}
//int fcount = 0;
//for (int f = 0; f < (int)file_names.size(); f++) {
fcount++;
//if (fcount < BATCH_SIZE && f + 1 != (int)file_names.size()) continue;
for (int b = 0; b < fcount; b++) {
// cv::Mat img = cv::imread(img_dir + "/" + file_names[f - fcount + 1 + b]);
cv::Mat img = frame;
//if (img.empty()) continue;
if(frame.empty())continue;
cv::Mat pr_img = preprocess_img(img, INPUT_W, INPUT_H); // letterbox BGR to RGB
int i = 0;
for (int row = 0; row < INPUT_H; ++row) {
uchar* uc_pixel = pr_img.data + row * pr_img.step;
for (int col = 0; col < INPUT_W; ++col) {
data[b * 3 * INPUT_H * INPUT_W + i] = (float)uc_pixel[2] / 255.0;
data[b * 3 * INPUT_H * INPUT_W + i + INPUT_H * INPUT_W] = (float)uc_pixel[1] / 255.0;
data[b * 3 * INPUT_H * INPUT_W + i + 2 * INPUT_H * INPUT_W] = (float)uc_pixel[0] / 255.0;
uc_pixel += 3;
++i;
}
}
}
// Run inference
auto start = std::chrono::system_clock::now();
doInference(*context, stream, buffers, data, prob, BATCH_SIZE);
auto end = std::chrono::system_clock::now();
//std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count() << "ms" << std::endl;
int fps =1000.0/ std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count();
std::cout <<"fps: "<< fps << std::endl;
std::vector<std::vector<Yolo::Detection>> batch_res(fcount);
for (int b = 0; b < fcount; b++) {
auto& res = batch_res[b];
nms(res, &prob[b * OUTPUT_SIZE], CONF_THRESH, NMS_THRESH);
}
for (int b = 0; b < fcount; b++) {
auto& res = batch_res[b];
//std::cout << res.size() << std::endl;
// cv::Mat img = cv::imread(img_dir + "/" + file_names[f - fcount + 1 + b]);
for (size_t j = 0; j < res.size(); j++) {
// cv::Rect r = get_rect(img, res[j].bbox);
// cv::rectangle(img, r, cv::Scalar(0x27, 0xC1, 0x36), 2);
// cv::putText(img, std::to_string((int)res[j].class_id), cv::Point(r.x, r.y - 1), cv::FONT_HERSHEY_PLAIN, 1.2, cv::Scalar(0xFF, 0xFF, 0xFF), 2);
//}
//cv::imwrite("_" + file_names[f - fcount + 1 + b], img);
cv::Rect r =get_rect(frame, res[j].bbox);
cv::rectangle(frame, r, cv::Scalar(0x27,0xC1,0x36),6);
std::string label = my_classes[(int)res[j].class_id];
cv::putText(frame, label, cv::Point(r.x, r.y -1), cv::FONT_HERSHEY_PLAIN,2, cv::Scalar(0xFF,0xFF,0xFF),2);
std::string jetson_fps ="Jetson Xavier NX FPS: "+ std::to_string(fps);
cv::putText(frame, jetson_fps, cv::Point(11,80), cv::FONT_HERSHEY_PLAIN,3, cv::Scalar(0,0,255),2, cv::LINE_AA);} //cv::imwrite("_" + file_names[f - fcount + 1 + b], img);}
cv::imshow("yolov5", frame);
key = cv::waitKey(1);
if(key =='q')
{
break;
}
fcount = 0;
}}
// Release stream and buffers
cudaStreamDestroy(stream);
CUDA_CHECK(cudaFree(buffers[inputIndex]));
CUDA_CHECK(cudaFree(buffers[outputIndex]));
// Destroy the engine
context->destroy();
engine->destroy();
runtime->destroy();
// Print histogram of the output distribution
//std::cout << "\nOutput:\n\n";
//for (unsigned int i = 0; i < OUTPUT_SIZE; i++)
//{
// std::cout << prob[i] << ", ";
// if (i % 10 == 0) std::cout << std::endl;
//}
//std::cout << std::endl;
return 0;
}
精度好像差了点哈,不过帧率确实提高了很多