diff --git a/tutorial.ipynb b/tutorial.ipynb
index 828e434f..4e7049d8 100644
--- a/tutorial.ipynb
+++ b/tutorial.ipynb
@@ -368,7 +368,7 @@
"colab_type": "text"
},
"source": [
- "
"
+ "
"
]
},
{
@@ -402,10 +402,10 @@
"colab": {
"base_uri": "https://localhost:8080/"
},
- "outputId": "2e5d0950-2978-4304-856f-3b39f0d6627c"
+ "outputId": "b15def02-a331-4580-9878-8d06900e296d"
},
"source": [
- "!git clone https://github.com/ultralytics/yolov3 -b update/yolov5_v6.0_release # clone\n",
+ "!git clone https://github.com/ultralytics/yolov3 # clone\n",
"%cd yolov3\n",
"%pip install -qr requirements.txt # install\n",
"\n",
@@ -413,13 +413,13 @@
"from yolov3 import utils\n",
"display = utils.notebook_init() # checks"
],
- "execution_count": 1,
+ "execution_count": 11,
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
- "YOLOv3 🚀 v9.5.0-20-g9d10fe5 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n"
+ "YOLOv3 🚀 v9.6.0-0-g7eb23e3 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n"
]
},
{
@@ -459,26 +459,26 @@
"colab": {
"base_uri": "https://localhost:8080/"
},
- "outputId": "499c53a7-95f7-4fc1-dab8-7a660b813546"
+ "outputId": "5754dd6d-b5b0-41aa-ce81-7cc7a4c30553"
},
"source": [
"!python detect.py --weights yolov3.pt --img 640 --conf 0.25 --source data/images\n",
"display.Image(filename='runs/detect/exp/zidane.jpg', width=600)"
],
- "execution_count": 3,
+ "execution_count": 15,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[34m\u001b[1mdetect: \u001b[0mweights=['yolov3.pt'], source=data/images, imgsz=[640, 640], conf_thres=0.25, iou_thres=0.45, max_det=1000, device=, view_img=False, save_txt=False, save_conf=False, save_crop=False, nosave=False, classes=None, agnostic_nms=False, augment=False, visualize=False, update=False, project=runs/detect, name=exp, exist_ok=False, line_thickness=3, hide_labels=False, hide_conf=False, half=False, dnn=False\n",
- "YOLOv3 🚀 v9.5.0-20-g9d10fe5 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n",
+ "YOLOv3 🚀 v9.6.0-0-g7eb23e3 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n",
"\n",
"Fusing layers... \n",
"Model Summary: 261 layers, 61922845 parameters, 0 gradients\n",
"image 1/2 /content/yolov3/data/images/bus.jpg: 640x480 4 persons, 1 bus, 1 tie, Done. (0.020s)\n",
"image 2/2 /content/yolov3/data/images/zidane.jpg: 384x640 2 persons, 3 ties, Done. (0.020s)\n",
- "Speed: 0.5ms pre-process, 19.8ms inference, 1.2ms NMS per image at shape (1, 3, 640, 640)\n",
+ "Speed: 0.6ms pre-process, 20.0ms inference, 1.2ms NMS per image at shape (1, 3, 640, 640)\n",
"Results saved to \u001b[1mruns/detect/exp\u001b[0m\n"
]
}
@@ -567,43 +567,42 @@
"colab": {
"base_uri": "https://localhost:8080/"
},
- "outputId": "0f4cfe4e-364e-4d79-e0af-8884d89eaacd"
+ "outputId": "fe3159ef-a2e4-49e3-ec0b-2ef434e9a28e"
},
"source": [
"# Run YOLOv3 on COCO val\n",
"!python val.py --weights yolov3.pt --data coco.yaml --img 640 --iou 0.65 --half"
],
- "execution_count": 5,
+ "execution_count": 13,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[34m\u001b[1mval: \u001b[0mdata=/content/yolov3/data/coco.yaml, weights=['yolov3.pt'], batch_size=32, imgsz=640, conf_thres=0.001, iou_thres=0.65, task=val, device=, single_cls=False, augment=False, verbose=False, save_txt=False, save_hybrid=False, save_conf=False, save_json=True, project=runs/val, name=exp, exist_ok=False, half=True, dnn=False\n",
- "YOLOv3 🚀 v9.5.0-20-g9d10fe5 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n",
+ "YOLOv3 🚀 v9.6.0-0-g7eb23e3 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n",
"\n",
"Fusing layers... \n",
"Model Summary: 261 layers, 61922845 parameters, 0 gradients\n",
- "\u001b[34m\u001b[1mval: \u001b[0mScanning '../datasets/coco/val2017' images and labels...4952 found, 48 missing, 0 empty, 0 corrupted: 100% 5000/5000 [00:00<00:00, 12689.82it/s]\n",
- "\u001b[34m\u001b[1mval: \u001b[0mNew cache created: ../datasets/coco/val2017.cache\n",
- " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 157/157 [00:42<00:00, 3.70it/s]\n",
+ "\u001b[34m\u001b[1mval: \u001b[0mScanning '../datasets/coco/val2017.cache' images and labels... 4952 found, 48 missing, 0 empty, 0 corrupted: 100% 5000/5000 [00:00, ?it/s]\n",
+ " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 157/157 [00:42<00:00, 3.68it/s]\n",
" all 5000 36335 0.655 0.599 0.623 0.42\n",
"Speed: 0.1ms pre-process, 2.1ms inference, 1.2ms NMS per image at shape (32, 3, 640, 640)\n",
"\n",
"Evaluating pycocotools mAP... saving runs/val/exp/yolov3_predictions.json...\n",
"loading annotations into memory...\n",
- "Done (t=0.45s)\n",
+ "Done (t=0.44s)\n",
"creating index...\n",
"index created!\n",
"Loading and preparing results...\n",
- "DONE (t=5.04s)\n",
+ "DONE (t=4.95s)\n",
"creating index...\n",
"index created!\n",
"Running per image evaluation...\n",
"Evaluate annotation type *bbox*\n",
- "DONE (t=82.40s).\n",
+ "DONE (t=86.74s).\n",
"Accumulating evaluation results...\n",
- "DONE (t=12.41s).\n",
+ "DONE (t=12.46s).\n",
" Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.433\n",
" Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.630\n",
" Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.470\n",
@@ -712,13 +711,13 @@
"colab": {
"base_uri": "https://localhost:8080/"
},
- "outputId": "28039ba4-b23b-4e59-ea0e-e1f8f7df0cdb"
+ "outputId": "ed857ac6-f674-425b-8163-c7ae0c107311"
},
"source": [
"# Train YOLOv3 on COCO128 for 3 epochs\n",
"!python train.py --img 640 --batch 16 --epochs 3 --data coco128.yaml --weights yolov3.pt --cache"
],
- "execution_count": 8,
+ "execution_count": 14,
"outputs": [
{
"output_type": "stream",
@@ -726,7 +725,7 @@
"text": [
"\u001b[34m\u001b[1mtrain: \u001b[0mweights=yolov3.pt, cfg=, data=coco128.yaml, hyp=data/hyps/hyp.scratch.yaml, epochs=3, batch_size=16, imgsz=640, rect=False, resume=False, nosave=False, noval=False, noautoanchor=False, evolve=None, bucket=, cache=ram, image_weights=False, device=, multi_scale=False, single_cls=False, adam=False, sync_bn=False, workers=8, project=runs/train, name=exp, exist_ok=False, quad=False, linear_lr=False, label_smoothing=0.0, patience=100, freeze=0, save_period=-1, local_rank=-1, entity=None, upload_dataset=False, bbox_interval=-1, artifact_alias=latest\n",
"\u001b[34m\u001b[1mgithub: \u001b[0mup to date with https://github.com/ultralytics/yolov3 ✅\n",
- "YOLOv3 🚀 v9.5.0-20-g9d10fe5 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n",
+ "YOLOv3 🚀 v9.6.0-0-g7eb23e3 torch 1.10.0+cu111 CUDA:0 (A100-SXM4-40GB, 40536MiB)\n",
"\n",
"\u001b[34m\u001b[1mhyperparameters: \u001b[0mlr0=0.01, lrf=0.1, 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, copy_paste=0.0\n",
"\u001b[34m\u001b[1mWeights & Biases: \u001b[0mrun 'pip install wandb' to automatically track and visualize YOLOv3 🚀 runs (RECOMMENDED)\n",
@@ -769,9 +768,9 @@
"\u001b[34m\u001b[1moptimizer:\u001b[0m SGD with parameter groups 72 weight, 75 weight (no decay), 75 bias\n",
"\u001b[34m\u001b[1malbumentations: \u001b[0mversion 1.0.3 required by YOLOv3, but version 0.1.12 is currently installed\n",
"\u001b[34m\u001b[1mtrain: \u001b[0mScanning '../datasets/coco128/labels/train2017.cache' images and labels... 128 found, 0 missing, 2 empty, 0 corrupted: 100% 128/128 [00:00, ?it/s]\n",
- "\u001b[34m\u001b[1mtrain: \u001b[0mCaching images (0.1GB ram): 100% 128/128 [00:00<00:00, 1376.44it/s]\n",
+ "\u001b[34m\u001b[1mtrain: \u001b[0mCaching images (0.1GB ram): 100% 128/128 [00:00<00:00, 1510.60it/s]\n",
"\u001b[34m\u001b[1mval: \u001b[0mScanning '../datasets/coco128/labels/train2017.cache' images and labels... 128 found, 0 missing, 2 empty, 0 corrupted: 100% 128/128 [00:00, ?it/s]\n",
- "\u001b[34m\u001b[1mval: \u001b[0mCaching images (0.1GB ram): 100% 128/128 [00:00<00:00, 414.73it/s]\n",
+ "\u001b[34m\u001b[1mval: \u001b[0mCaching images (0.1GB ram): 100% 128/128 [00:00<00:00, 400.72it/s]\n",
"Plotting labels to runs/train/exp/labels.jpg... \n",
"\n",
"\u001b[34m\u001b[1mAutoAnchor: \u001b[0m4.27 anchors/target, 0.994 Best Possible Recall (BPR). Current anchors are a good fit to dataset ✅\n",
@@ -781,19 +780,19 @@
"Starting training for 3 epochs...\n",
"\n",
" Epoch gpu_mem box obj cls labels img_size\n",
- " 0/2 12.2G 0.06494 0.08502 0.01907 186 640: 100% 8/8 [00:04<00:00, 1.89it/s]\n",
+ " 0/2 12.2G 0.06494 0.08502 0.01907 186 640: 100% 8/8 [00:04<00:00, 1.94it/s]\n",
" Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:00<00:00, 5.14it/s]\n",
- " all 128 929 0.5 0.342 0.394 0.175\n",
+ " all 128 929 0.5 0.343 0.394 0.175\n",
"\n",
" Epoch gpu_mem box obj cls labels img_size\n",
- " 1/2 16.3G 0.06255 0.08206 0.01831 164 640: 100% 8/8 [00:01<00:00, 4.86it/s]\n",
- " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:00<00:00, 5.12it/s]\n",
+ " 1/2 16.3G 0.06255 0.08206 0.01831 164 640: 100% 8/8 [00:01<00:00, 4.80it/s]\n",
+ " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:00<00:00, 5.11it/s]\n",
" all 128 929 0.487 0.437 0.475 0.205\n",
"\n",
" Epoch gpu_mem box obj cls labels img_size\n",
- " 2/2 16.3G 0.06032 0.07332 0.01861 192 640: 100% 8/8 [00:01<00:00, 4.74it/s]\n",
- " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:00<00:00, 5.24it/s]\n",
- " all 128 929 0.564 0.455 0.528 0.23\n",
+ " 2/2 16.3G 0.06032 0.07331 0.01861 192 640: 100% 8/8 [00:01<00:00, 4.81it/s]\n",
+ " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:00<00:00, 5.17it/s]\n",
+ " all 128 929 0.565 0.455 0.528 0.231\n",
"\n",
"3 epochs completed in 0.006 hours.\n",
"Optimizer stripped from runs/train/exp/weights/last.pt, 124.4MB\n",
@@ -802,79 +801,79 @@
"Validating runs/train/exp/weights/best.pt...\n",
"Fusing layers... \n",
"Model Summary: 261 layers, 61922845 parameters, 0 gradients, 156.1 GFLOPs\n",
- " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:03<00:00, 1.21it/s]\n",
- " all 128 929 0.561 0.456 0.528 0.231\n",
- " person 128 254 0.573 0.567 0.593 0.246\n",
- " bicycle 128 6 0.183 0.167 0.273 0.124\n",
- " car 128 46 0.557 0.13 0.218 0.0538\n",
- " motorcycle 128 5 0.682 0.8 0.818 0.272\n",
- " airplane 128 6 0.769 0.563 0.809 0.322\n",
- " bus 128 7 0.717 0.714 0.752 0.541\n",
- " train 128 3 0.67 0.667 0.863 0.221\n",
- " truck 128 12 0.686 0.333 0.469 0.186\n",
- " boat 128 6 0.67 0.333 0.473 0.19\n",
- " traffic light 128 14 0.18 0.0257 0.0721 0.0435\n",
- " stop sign 128 2 0.369 0.5 0.497 0.137\n",
- " bench 128 9 0.479 0.333 0.387 0.125\n",
- " bird 128 16 0.519 0.472 0.59 0.224\n",
- " cat 128 4 0.661 0.978 0.828 0.555\n",
- " dog 128 9 0.532 0.333 0.523 0.265\n",
- " horse 128 2 0.698 1 0.995 0.596\n",
- " elephant 128 17 0.677 0.647 0.755 0.277\n",
- " bear 128 1 0.683 1 0.995 0.398\n",
- " zebra 128 4 0.753 1 0.945 0.4\n",
- " giraffe 128 9 0.274 0.889 0.767 0.328\n",
- " backpack 128 6 0.608 0.167 0.463 0.183\n",
- " umbrella 128 18 0.68 0.708 0.749 0.25\n",
- " handbag 128 19 0.661 0.158 0.305 0.157\n",
- " tie 128 7 0.813 0.626 0.753 0.29\n",
- " suitcase 128 4 0.518 0.5 0.781 0.34\n",
- " frisbee 128 5 0.556 0.512 0.454 0.289\n",
+ " Class Images Labels P R mAP@.5 mAP@.5:.95: 100% 4/4 [00:03<00:00, 1.22it/s]\n",
+ " all 128 929 0.565 0.454 0.528 0.231\n",
+ " person 128 254 0.576 0.567 0.593 0.245\n",
+ " bicycle 128 6 0.184 0.167 0.273 0.124\n",
+ " car 128 46 0.568 0.13 0.217 0.0537\n",
+ " motorcycle 128 5 0.683 0.8 0.818 0.272\n",
+ " airplane 128 6 0.766 0.555 0.809 0.342\n",
+ " bus 128 7 0.718 0.714 0.752 0.541\n",
+ " train 128 3 0.676 0.667 0.863 0.221\n",
+ " truck 128 12 0.699 0.333 0.469 0.186\n",
+ " boat 128 6 0.675 0.333 0.472 0.19\n",
+ " traffic light 128 14 0.176 0.0252 0.0721 0.0435\n",
+ " stop sign 128 2 0.37 0.5 0.497 0.137\n",
+ " bench 128 9 0.48 0.333 0.393 0.126\n",
+ " bird 128 16 0.518 0.471 0.59 0.224\n",
+ " cat 128 4 0.656 0.96 0.828 0.555\n",
+ " dog 128 9 0.534 0.333 0.523 0.265\n",
+ " horse 128 2 0.7 1 0.995 0.596\n",
+ " elephant 128 17 0.677 0.647 0.754 0.286\n",
+ " bear 128 1 0.684 1 0.995 0.398\n",
+ " zebra 128 4 0.755 1 0.945 0.4\n",
+ " giraffe 128 9 0.275 0.889 0.767 0.328\n",
+ " backpack 128 6 0.611 0.167 0.463 0.183\n",
+ " umbrella 128 18 0.679 0.706 0.749 0.25\n",
+ " handbag 128 19 0.663 0.158 0.305 0.157\n",
+ " tie 128 7 0.811 0.618 0.753 0.29\n",
+ " suitcase 128 4 0.522 0.5 0.781 0.34\n",
+ " frisbee 128 5 0.552 0.503 0.454 0.289\n",
" skis 128 1 0 0 0.124 0.0124\n",
- " snowboard 128 7 0.747 0.571 0.695 0.305\n",
- " sports ball 128 6 0.601 0.167 0.177 0.0865\n",
- " kite 128 10 0.222 0.2 0.153 0.0284\n",
- " baseball bat 128 4 0.948 0.25 0.461 0.212\n",
- " baseball glove 128 7 0.792 0.143 0.248 0.159\n",
- " skateboard 128 5 0.61 0.2 0.371 0.16\n",
- " tennis racket 128 7 0.424 0.286 0.342 0.134\n",
- " bottle 128 18 0.43 0.278 0.425 0.167\n",
- " wine glass 128 16 0.607 0.438 0.532 0.24\n",
- " cup 128 36 0.418 0.278 0.409 0.121\n",
- " fork 128 6 0.43 0.333 0.441 0.121\n",
- " knife 128 16 0.746 0.368 0.434 0.162\n",
- " spoon 128 22 0.485 0.273 0.342 0.113\n",
- " bowl 128 28 0.583 0.5 0.615 0.382\n",
- " banana 128 1 0.773 1 0.995 0.298\n",
+ " snowboard 128 7 0.749 0.571 0.695 0.305\n",
+ " sports ball 128 6 0.609 0.167 0.177 0.0865\n",
+ " kite 128 10 0.225 0.2 0.154 0.026\n",
+ " baseball bat 128 4 0.956 0.25 0.461 0.212\n",
+ " baseball glove 128 7 0.905 0.143 0.248 0.159\n",
+ " skateboard 128 5 0.611 0.2 0.371 0.16\n",
+ " tennis racket 128 7 0.427 0.286 0.343 0.135\n",
+ " bottle 128 18 0.432 0.278 0.425 0.167\n",
+ " wine glass 128 16 0.614 0.438 0.531 0.239\n",
+ " cup 128 36 0.421 0.278 0.411 0.121\n",
+ " fork 128 6 0.439 0.333 0.441 0.123\n",
+ " knife 128 16 0.744 0.365 0.419 0.161\n",
+ " spoon 128 22 0.487 0.273 0.342 0.112\n",
+ " bowl 128 28 0.582 0.496 0.615 0.382\n",
+ " banana 128 1 0.776 1 0.995 0.298\n",
" sandwich 128 2 1 0 0.663 0.498\n",
- " orange 128 4 0.464 0.66 0.472 0.235\n",
- " broccoli 128 11 0.132 0.182 0.123 0.0912\n",
- " carrot 128 24 0.223 0.25 0.266 0.112\n",
- " hot dog 128 2 0.645 1 0.995 0.275\n",
+ " orange 128 4 0.463 0.658 0.472 0.235\n",
+ " broccoli 128 11 0.133 0.182 0.123 0.0912\n",
+ " carrot 128 24 0.225 0.25 0.266 0.112\n",
+ " hot dog 128 2 0.647 1 0.995 0.275\n",
" pizza 128 5 0.398 0.8 0.639 0.322\n",
" donut 128 14 0.662 1 0.82 0.436\n",
- " cake 128 4 0.776 0.879 0.945 0.449\n",
+ " cake 128 4 0.775 0.877 0.945 0.449\n",
" chair 128 35 0.323 0.4 0.328 0.113\n",
- " couch 128 6 0.401 0.333 0.399 0.251\n",
- " potted plant 128 14 0.803 0.643 0.679 0.281\n",
- " bed 128 3 0.663 0.333 0.83 0.416\n",
- " dining table 128 13 0.314 0.615 0.291 0.135\n",
- " toilet 128 2 0.79 1 0.995 0.298\n",
- " tv 128 2 0.627 1 0.828 0.414\n",
- " laptop 128 3 1 0 0.194 0.18\n",
+ " couch 128 6 0.428 0.333 0.399 0.251\n",
+ " potted plant 128 14 0.806 0.643 0.678 0.28\n",
+ " bed 128 3 0.667 0.333 0.83 0.416\n",
+ " dining table 128 13 0.337 0.615 0.291 0.128\n",
+ " toilet 128 2 0.791 1 0.995 0.298\n",
+ " tv 128 2 0.629 1 0.828 0.414\n",
+ " laptop 128 3 1 0 0.194 0.179\n",
" mouse 128 2 1 0 0.129 0.0258\n",
" remote 128 8 0.217 0.125 0.204 0.0994\n",
" cell phone 128 8 0.557 0.168 0.42 0.076\n",
- " microwave 128 3 0.65 0.667 0.747 0.292\n",
+ " microwave 128 3 0.652 0.667 0.747 0.292\n",
" oven 128 5 0.422 0.4 0.486 0.195\n",
- " sink 128 6 0.273 0.333 0.24 0.118\n",
- " refrigerator 128 5 0.565 0.6 0.699 0.371\n",
- " book 128 29 0.408 0.138 0.263 0.0898\n",
- " clock 128 9 0.508 0.333 0.572 0.291\n",
- " vase 128 2 0.264 0.546 0.695 0.367\n",
+ " sink 128 6 0.275 0.333 0.24 0.118\n",
+ " refrigerator 128 5 0.568 0.6 0.699 0.371\n",
+ " book 128 29 0.411 0.138 0.263 0.0897\n",
+ " clock 128 9 0.509 0.333 0.572 0.291\n",
+ " vase 128 2 0.257 0.523 0.695 0.367\n",
" scissors 128 1 1 0 0.0113 0.00226\n",
- " teddy bear 128 21 0.506 0.333 0.403 0.146\n",
- " toothbrush 128 5 0.277 0.2 0.263 0.0837\n",
+ " teddy bear 128 21 0.508 0.333 0.403 0.146\n",
+ " toothbrush 128 5 0.279 0.2 0.263 0.0837\n",
"Results saved to \u001b[1mruns/train/exp\u001b[0m\n"
]
}
@@ -1081,4 +1080,4 @@
"outputs": []
}
]
-}
+}
\ No newline at end of file