Giter VIP home page Giter VIP logo

yet-another-yolov4-pytorch's Introduction

Yet-Another-YOLOv4-Pytorch

!!! For the jupyter notebook please install pytorch-lightning version 0.7.6

This is implementation of YOLOv4 object detection neural network on pytorch. I'll try to implement all features of original paper.

What you can already do

You can use video_demo.py to take a look at the original weights realtime OD detection. (Have 9 fps on my GTX1060 laptop!!!)

You can train your own model with mosaic augmentation for training. Guides how to do this are written below. Borders of images on some datasets are even hard to find.

You can make inference, guide bellow.

Initialize NN

#YOU CAN USE TORCH HUB
m = torch.hub.load("VCasecnikovs/Yet-Another-YOLOv4-Pytorch", "yolov4", pretrained=True)

import model
#If you change n_classes from the pretrained, there will be caught one error, don't panic it is ok

#FROM SAVED WEIGHTS
m = model.YOLOv4(n_classes=1, weights_path="weights/yolov4.pth")

#AUTOMATICALLY DOWNLOAD PRETRAINED
m = model.YOLOv4(n_classes=1, pretrained=True)

Download weights

You can use torch hub or you can download weights using from this link: https://drive.google.com/open?id=12AaR4fvIQPZ468vhm0ZYZSLgWac2HBnq

Initialize dataset

import dataset
d = dataset.ListDataset("train.txt", img_dir='images', labels_dir='labels', img_extensions=['.JPG'], train=True)
path, img, bboxes = d[0]

!!! You can use SplitDataset.ipynb to create train.txt and valid.txt

"train.txt" is file which consists with filepaths to image (images\primula\DSC02542.JPG)

img_dir - Folder with images labels_dir - Folder with txt files for annotation img_extensions - extensions if images

If you set train=False -> uses letterboxes If you set train=True -> HSV augmentations and mosaic

dataset has collate_function

# collate func example
y1 = d[0]
y2 = d[1]
paths_b, xb, yb = d.collate_fn((y1, y2))
# yb has 6 columns

Y's format

Is a tensor of size (B, 6), where B is amount of boxes in all batch images.

  1. Index of img to which this anchor belongs (if 1, then it belongs to x[1])
  2. BBox class
  3. x center
  4. y center
  5. width
  6. height

Forward with loss

y_hat, loss = m(xb, yb)

!!! y_hat is already resized anchors to image size bboxes

Forward without loss

y_hat,  _ = m(img_batch) #_ is (0, 0, 0)

Check if bboxes are correct

import utils
from PIL import Image
path, img, bboxes = d[0]
img_with_bboxes = utils.get_img_with_bboxes(img, bboxes[:, 2:]) #Returns numpy array
Image.fromarray(img_with_bboxes)

Get predicted bboxes

anchors, loss = m(xb.cuda(), yb.cuda())
confidence_threshold = 0.05
iou_threshold = 0.5
bboxes, labels = utils.get_bboxes_from_anchors(anchors, confidence_threshold, iou_threshold, coco_dict) #COCO dict is id->class dictionary (f.e. 0->person)
#For first img
arr = utils.get_img_with_bboxes(xb[0].cpu(), bboxes[0].cpu(), resize=False, labels=labels[0])
Image.fromarray(arr)

References

In case if you missed:
Paper Yolo v4: https://arxiv.org/abs/2004.10934\ Original repo: https://github.com/AlexeyAB/darknet#how-to-train-to-detect-your-custom-objects

@article{yolov4,
  title={YOLOv4: YOLOv4: Optimal Speed and Accuracy of Object Detection},
  author={Alexey Bochkovskiy, Chien-Yao Wang, Hong-Yuan Mark Liao},
  journal = {arXiv},
  year={2020}
}

yet-another-yolov4-pytorch's People

Contributors

alexeyab avatar vcasecnikovs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

yet-another-yolov4-pytorch's Issues

PL version

Hello, after reading your code carefully, I feel I have benefited a lot. There are some problems in the ipynb of operation training, which may be related to the different operation environment. Can you tell me the specific operation environment?

qt.qpa.xcb: could not connect to display

I am getting the following error when running video_demo.py. Can somebody please suggest how to fix it?

qt.qpa.xcb: could not connect to display 
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/orazayy/.local/lib/python3.8/site-packages/cv2/qt/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb.

nan value predicted sometimes for pred_conf

loss_conf_noobj = F.binary_cross_entropy(pred_conf[noobj_mask], tconf[noobj_mask])
RuntimeError: copy_if failed to synchronize: cudaErrorAssert: device-side assert triggered

pred_conf
tensor([[[[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
...,
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan]],

     [[nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan],
      ...,
      [nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan]],

     [[nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan],
      ...,
      [nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan],
      [nan, nan, nan,  ..., nan, nan, nan]]],

AP ?

Thanks for this repo. !

I was wondering if you had any numbers you could share comparing what AP this repo. is able to train to on coco or similar and maybe FPS. - just so we can compare to AlexeyAB's darknet.

NaNs when training

I have discovered that when training sometimes line 1033

pred_boxes[..., 2] = torch.exp(w) * self.anchor_w

or line 1034

pred_boxes[..., 3] = torch.exp(h) * self.anchor_h

Causes overflow when there is an element in w or h that is too large. Is there any way to solve this?

t.lr_find(m, min_lr=1e-10, max_lr=1, early_stop_threshold=None)

@VCasecnikovs Thank you for answering so fast.

[I cannot reopen the issue, this is why I am creating a new issue, see https://newbedev.com/how-to-re-open-an-issue-in-github]

I reverted the code and reinstall the pytorch-lightning library

$ conda list | grep pytorch-lightning
pytorch-lightning         0.7.6                    pypi_0    pypi

Running r = t.lr_find(m, min_lr=1e-10, max_lr=1, early_stop_threshold=None) gives me the following error:


    | Name                                          | Type              | Params
--------------------------------------------------------------------------------
0   | model                                         | YOLOv4            | 70 M  
1   | model.backbone                                | Backbone          | 26 M  
2   | model.backbone.d1                             | DownSampleFirst   | 61 K  
3   | model.backbone.d1.c1                          | ConvBlock         | 928   
4   | model.backbone.d1.c1.module                   | Sequential        | 928   
5   | model.backbone.d1.c1.module.0                 | Conv2d            | 864   
6   | model.backbone.d1.c1.module.1                 | BatchNorm2d       | 64    
7   | model.backbone.d1.c1.module.2                 | Mish              | 0     
8   | model.backbone.d1.c2                          | ConvBlock         | 18 K  
9   | model.backbone.d1.c2.module                   | Sequential        | 18 K  
10  | model.backbone.d1.c2.module.0                 | Conv2d            | 18 K  
11  | model.backbone.d1.c2.module.1                 | BatchNorm2d       | 128   
12  | model.backbone.d1.c2.module.2                 | Mish              | 0     
13  | model.backbone.d1.c3                          | ConvBlock         | 4 K   
14  | model.backbone.d1.c3.module                   | Sequential        | 4 K   
15  | model.backbone.d1.c3.module.0                 | Conv2d            | 4 K   
16  | model.backbone.d1.c3.module.1                 | BatchNorm2d       | 128   
17  | model.backbone.d1.c3.module.2                 | Mish              | 0     
18  | model.backbone.d1.c4                          | ConvBlock         | 2 K   
19  | model.backbone.d1.c4.module                   | Sequential        | 2 K   
20  | model.backbone.d1.c4.module.0                 | Conv2d            | 2 K   
21  | model.backbone.d1.c4.module.1                 | BatchNorm2d       | 64    
22  | model.backbone.d1.c4.module.2                 | Mish              | 0     
23  | model.backbone.d1.c5                          | ConvBlock         | 18 K  
24  | model.backbone.d1.c5.module                   | Sequential        | 18 K  
25  | model.backbone.d1.c5.module.0                 | Conv2d            | 18 K  
26  | model.backbone.d1.c5.module.1                 | BatchNorm2d       | 128   
27  | model.backbone.d1.c5.module.2                 | Mish              | 0     
28  | model.backbone.d1.c6                          | ConvBlock         | 4 K   
29  | model.backbone.d1.c6.module                   | Sequential        | 4 K   
30  | model.backbone.d1.c6.module.0                 | Conv2d            | 4 K   
31  | model.backbone.d1.c6.module.1                 | BatchNorm2d       | 128   
32  | model.backbone.d1.c6.module.2                 | Mish              | 0     
33  | model.backbone.d1.dense_c3_c6                 | ConvBlock         | 4 K   
34  | model.backbone.d1.dense_c3_c6.module          | Sequential        | 4 K   
35  | model.backbone.d1.dense_c3_c6.module.0        | Conv2d            | 4 K   
36  | model.backbone.d1.dense_c3_c6.module.1        | BatchNorm2d       | 128   
37  | model.backbone.d1.dense_c3_c6.module.2        | Mish              | 0     
38  | model.backbone.d1.c7                          | ConvBlock         | 8 K   
39  | model.backbone.d1.c7.module                   | Sequential        | 8 K   
40  | model.backbone.d1.c7.module.0                 | Conv2d            | 8 K   
41  | model.backbone.d1.c7.module.1                 | BatchNorm2d       | 128   
42  | model.backbone.d1.c7.module.2                 | Mish              | 0     
43  | model.backbone.d2                             | DownSampleBlock   | 193 K 
44  | model.backbone.d2.c1                          | ConvBlock         | 73 K  
45  | model.backbone.d2.c1.module                   | Sequential        | 73 K  
46  | model.backbone.d2.c1.module.0                 | Conv2d            | 73 K  
47  | model.backbone.d2.c1.module.1                 | BatchNorm2d       | 256   
48  | model.backbone.d2.c1.module.2                 | Mish              | 0     
49  | model.backbone.d2.c2                          | ConvBlock         | 8 K   
50  | model.backbone.d2.c2.module                   | Sequential        | 8 K   
51  | model.backbone.d2.c2.module.0                 | Conv2d            | 8 K   
52  | model.backbone.d2.c2.module.1                 | BatchNorm2d       | 128   
53  | model.backbone.d2.c2.module.2                 | Mish              | 0     
54  | model.backbone.d2.r3                          | ResBlock          | 82 K  
55  | model.backbone.d2.r3.module_list              | ModuleList        | 82 K  
56  | model.backbone.d2.r3.module_list.0            | ModuleList        | 41 K  
57  | model.backbone.d2.r3.module_list.0.0          | ConvBlock         | 4 K   
58  | model.backbone.d2.r3.module_list.0.0.module   | Sequential        | 4 K   
59  | model.backbone.d2.r3.module_list.0.0.module.0 | Conv2d            | 4 K   
60  | model.backbone.d2.r3.module_list.0.0.module.1 | BatchNorm2d       | 128   
61  | model.backbone.d2.r3.module_list.0.0.module.2 | Mish              | 0     
62  | model.backbone.d2.r3.module_list.0.1          | ConvBlock         | 36 K  
63  | model.backbone.d2.r3.module_list.0.1.module   | Sequential        | 36 K  
64  | model.backbone.d2.r3.module_list.0.1.module.0 | Conv2d            | 36 K  
65  | model.backbone.d2.r3.module_list.0.1.module.1 | BatchNorm2d       | 128   
66  | model.backbone.d2.r3.module_list.0.1.module.2 | Mish              | 0     
67  | model.backbone.d2.r3.module_list.1            | ModuleList        | 41 K  
68  | model.backbone.d2.r3.module_list.1.0          | ConvBlock         | 4 K   
69  | model.backbone.d2.r3.module_list.1.0.module   | Sequential        | 4 K   
70  | model.backbone.d2.r3.module_list.1.0.module.0 | Conv2d            | 4 K   
71  | model.backbone.d2.r3.module_list.1.0.module.1 | BatchNorm2d       | 128   
72  | model.backbone.d2.r3.module_list.1.0.module.2 | Mish              | 0     
73  | model.backbone.d2.r3.module_list.1.1          | ConvBlock         | 36 K  
74  | model.backbone.d2.r3.module_list.1.1.module   | Sequential        | 36 K  
75  | model.backbone.d2.r3.module_list.1.1.module.0 | Conv2d            | 36 K  
76  | model.backbone.d2.r3.module_list.1.1.module.1 | BatchNorm2d       | 128   
77  | model.backbone.d2.r3.module_list.1.1.module.2 | Mish              | 0     
78  | model.backbone.d2.c4                          | ConvBlock         | 4 K   
79  | model.backbone.d2.c4.module                   | Sequential        | 4 K   
80  | model.backbone.d2.c4.module.0                 | Conv2d            | 4 K   
81  | model.backbone.d2.c4.module.1                 | BatchNorm2d       | 128   
82  | model.backbone.d2.c4.module.2                 | Mish              | 0     
83  | model.backbone.d2.dense_c2_c4                 | ConvBlock         | 8 K   
84  | model.backbone.d2.dense_c2_c4.module          | Sequential        | 8 K   
85  | model.backbone.d2.dense_c2_c4.module.0        | Conv2d            | 8 K   
86  | model.backbone.d2.dense_c2_c4.module.1        | BatchNorm2d       | 128   
87  | model.backbone.d2.dense_c2_c4.module.2        | Mish              | 0     
88  | model.backbone.d2.c5                          | ConvBlock         | 16 K  
89  | model.backbone.d2.c5.module                   | Sequential        | 16 K  
90  | model.backbone.d2.c5.module.0                 | Conv2d            | 16 K  
91  | model.backbone.d2.c5.module.1                 | BatchNorm2d       | 256   
92  | model.backbone.d2.c5.module.2                 | Mish              | 0     
93  | model.backbone.d3                             | DownSampleBlock   | 1 M   
94  | model.backbone.d3.c1                          | ConvBlock         | 295 K 
95  | model.backbone.d3.c1.module                   | Sequential        | 295 K 
96  | model.backbone.d3.c1.module.0                 | Conv2d            | 294 K 
97  | model.backbone.d3.c1.module.1                 | BatchNorm2d       | 512   
98  | model.backbone.d3.c1.module.2                 | Mish              | 0     
99  | model.backbone.d3.c2                          | ConvBlock         | 33 K  
100 | model.backbone.d3.c2.module                   | Sequential        | 33 K  
101 | model.backbone.d3.c2.module.0                 | Conv2d            | 32 K  
102 | model.backbone.d3.c2.module.1                 | BatchNorm2d       | 256   
103 | model.backbone.d3.c2.module.2                 | Mish              | 0     
104 | model.backbone.d3.r3                          | ResBlock          | 1 M   
105 | model.backbone.d3.r3.module_list              | ModuleList        | 1 M   
106 | model.backbone.d3.r3.module_list.0            | ModuleList        | 164 K 
107 | model.backbone.d3.r3.module_list.0.0          | ConvBlock         | 16 K  
108 | model.backbone.d3.r3.module_list.0.0.module   | Sequential        | 16 K  
109 | model.backbone.d3.r3.module_list.0.0.module.0 | Conv2d            | 16 K  
110 | model.backbone.d3.r3.module_list.0.0.module.1 | BatchNorm2d       | 256   
111 | model.backbone.d3.r3.module_list.0.0.module.2 | Mish              | 0     
112 | model.backbone.d3.r3.module_list.0.1          | ConvBlock         | 147 K 
113 | model.backbone.d3.r3.module_list.0.1.module   | Sequential        | 147 K 
114 | model.backbone.d3.r3.module_list.0.1.module.0 | Conv2d            | 147 K 
115 | model.backbone.d3.r3.module_list.0.1.module.1 | BatchNorm2d       | 256   
116 | model.backbone.d3.r3.module_list.0.1.module.2 | Mish              | 0     
117 | model.backbone.d3.r3.module_list.1            | ModuleList        | 164 K 
118 | model.backbone.d3.r3.module_list.1.0          | ConvBlock         | 16 K  
119 | model.backbone.d3.r3.module_list.1.0.module   | Sequential        | 16 K  
120 | model.backbone.d3.r3.module_list.1.0.module.0 | Conv2d            | 16 K  
121 | model.backbone.d3.r3.module_list.1.0.module.1 | BatchNorm2d       | 256   
122 | model.backbone.d3.r3.module_list.1.0.module.2 | Mish              | 0     
123 | model.backbone.d3.r3.module_list.1.1          | ConvBlock         | 147 K 
124 | model.backbone.d3.r3.module_list.1.1.module   | Sequential        | 147 K 
125 | model.backbone.d3.r3.module_list.1.1.module.0 | Conv2d            | 147 K 
126 | model.backbone.d3.r3.module_list.1.1.module.1 | BatchNorm2d       | 256   
127 | model.backbone.d3.r3.module_list.1.1.module.2 | Mish              | 0     
128 | model.backbone.d3.r3.module_list.2            | ModuleList        | 164 K 
129 | model.backbone.d3.r3.module_list.2.0          | ConvBlock         | 16 K  
130 | model.backbone.d3.r3.module_list.2.0.module   | Sequential        | 16 K  
131 | model.backbone.d3.r3.module_list.2.0.module.0 | Conv2d            | 16 K  
132 | model.backbone.d3.r3.module_list.2.0.module.1 | BatchNorm2d       | 256   
133 | model.backbone.d3.r3.module_list.2.0.module.2 | Mish              | 0     
134 | model.backbone.d3.r3.module_list.2.1          | ConvBlock         | 147 K 
135 | model.backbone.d3.r3.module_list.2.1.module   | Sequential        | 147 K 
136 | model.backbone.d3.r3.module_list.2.1.module.0 | Conv2d            | 147 K 
137 | model.backbone.d3.r3.module_list.2.1.module.1 | BatchNorm2d       | 256   
138 | model.backbone.d3.r3.module_list.2.1.module.2 | Mish              | 0     
139 | model.backbone.d3.r3.module_list.3            | ModuleList        | 164 K 
140 | model.backbone.d3.r3.module_list.3.0          | ConvBlock         | 16 K  
141 | model.backbone.d3.r3.module_list.3.0.module   | Sequential        | 16 K  
142 | model.backbone.d3.r3.module_list.3.0.module.0 | Conv2d            | 16 K  
143 | model.backbone.d3.r3.module_list.3.0.module.1 | BatchNorm2d       | 256   
144 | model.backbone.d3.r3.module_list.3.0.module.2 | Mish              | 0     
145 | model.backbone.d3.r3.module_list.3.1          | ConvBlock         | 147 K 
146 | model.backbone.d3.r3.module_list.3.1.module   | Sequential        | 147 K 
147 | model.backbone.d3.r3.module_list.3.1.module.0 | Conv2d            | 147 K 
148 | model.backbone.d3.r3.module_list.3.1.module.1 | BatchNorm2d       | 256   
149 | model.backbone.d3.r3.module_list.3.1.module.2 | Mish              | 0     
150 | model.backbone.d3.r3.module_list.4            | ModuleList        | 164 K 
151 | model.backbone.d3.r3.module_list.4.0          | ConvBlock         | 16 K  
152 | model.backbone.d3.r3.module_list.4.0.module   | Sequential        | 16 K  
153 | model.backbone.d3.r3.module_list.4.0.module.0 | Conv2d            | 16 K  
154 | model.backbone.d3.r3.module_list.4.0.module.1 | BatchNorm2d       | 256   
155 | model.backbone.d3.r3.module_list.4.0.module.2 | Mish              | 0     
156 | model.backbone.d3.r3.module_list.4.1          | ConvBlock         | 147 K 
157 | model.backbone.d3.r3.module_list.4.1.module   | Sequential        | 147 K 
158 | model.backbone.d3.r3.module_list.4.1.module.0 | Conv2d            | 147 K 
159 | model.backbone.d3.r3.module_list.4.1.module.1 | BatchNorm2d       | 256   
160 | model.backbone.d3.r3.module_list.4.1.module.2 | Mish              | 0     
161 | model.backbone.d3.r3.module_list.5            | ModuleList        | 164 K 
162 | model.backbone.d3.r3.module_list.5.0          | ConvBlock         | 16 K  
163 | model.backbone.d3.r3.module_list.5.0.module   | Sequential        | 16 K  
164 | model.backbone.d3.r3.module_list.5.0.module.0 | Conv2d            | 16 K  
165 | model.backbone.d3.r3.module_list.5.0.module.1 | BatchNorm2d       | 256   
166 | model.backbone.d3.r3.module_list.5.0.module.2 | Mish              | 0     
167 | model.backbone.d3.r3.module_list.5.1          | ConvBlock         | 147 K 
168 | model.backbone.d3.r3.module_list.5.1.module   | Sequential        | 147 K 
169 | model.backbone.d3.r3.module_list.5.1.module.0 | Conv2d            | 147 K 
170 | model.backbone.d3.r3.module_list.5.1.module.1 | BatchNorm2d       | 256   
171 | model.backbone.d3.r3.module_list.5.1.module.2 | Mish              | 0     
172 | model.backbone.d3.r3.module_list.6            | ModuleList        | 164 K 
173 | model.backbone.d3.r3.module_list.6.0          | ConvBlock         | 16 K  
174 | model.backbone.d3.r3.module_list.6.0.module   | Sequential        | 16 K  
175 | model.backbone.d3.r3.module_list.6.0.module.0 | Conv2d            | 16 K  
176 | model.backbone.d3.r3.module_list.6.0.module.1 | BatchNorm2d       | 256   
177 | model.backbone.d3.r3.module_list.6.0.module.2 | Mish              | 0     
178 | model.backbone.d3.r3.module_list.6.1          | ConvBlock         | 147 K 
179 | model.backbone.d3.r3.module_list.6.1.module   | Sequential        | 147 K 
180 | model.backbone.d3.r3.module_list.6.1.module.0 | Conv2d            | 147 K 
181 | model.backbone.d3.r3.module_list.6.1.module.1 | BatchNorm2d       | 256   
182 | model.backbone.d3.r3.module_list.6.1.module.2 | Mish              | 0     
183 | model.backbone.d3.r3.module_list.7            | ModuleList        | 164 K 
184 | model.backbone.d3.r3.module_list.7.0          | ConvBlock         | 16 K  
185 | model.backbone.d3.r3.module_list.7.0.module   | Sequential        | 16 K  
186 | model.backbone.d3.r3.module_list.7.0.module.0 | Conv2d            | 16 K  
187 | model.backbone.d3.r3.module_list.7.0.module.1 | BatchNorm2d       | 256   
188 | model.backbone.d3.r3.module_list.7.0.module.2 | Mish              | 0     
189 | model.backbone.d3.r3.module_list.7.1          | ConvBlock         | 147 K 
190 | model.backbone.d3.r3.module_list.7.1.module   | Sequential        | 147 K 
191 | model.backbone.d3.r3.module_list.7.1.module.0 | Conv2d            | 147 K 
192 | model.backbone.d3.r3.module_list.7.1.module.1 | BatchNorm2d       | 256   
193 | model.backbone.d3.r3.module_list.7.1.module.2 | Mish              | 0     
194 | model.backbone.d3.c4                          | ConvBlock         | 16 K  
195 | model.backbone.d3.c4.module                   | Sequential        | 16 K  
196 | model.backbone.d3.c4.module.0                 | Conv2d            | 16 K  
197 | model.backbone.d3.c4.module.1                 | BatchNorm2d       | 256   
198 | model.backbone.d3.c4.module.2                 | Mish              | 0     
199 | model.backbone.d3.dense_c2_c4                 | ConvBlock         | 33 K  
200 | model.backbone.d3.dense_c2_c4.module          | Sequential        | 33 K  
201 | model.backbone.d3.dense_c2_c4.module.0        | Conv2d            | 32 K  
202 | model.backbone.d3.dense_c2_c4.module.1        | BatchNorm2d       | 256   
203 | model.backbone.d3.dense_c2_c4.module.2        | Mish              | 0     
204 | model.backbone.d3.c5                          | ConvBlock         | 66 K  
205 | model.backbone.d3.c5.module                   | Sequential        | 66 K  
206 | model.backbone.d3.c5.module.0                 | Conv2d            | 65 K  
207 | model.backbone.d3.c5.module.1                 | BatchNorm2d       | 512   
208 | model.backbone.d3.c5.module.2                 | Mish              | 0     
209 | model.backbone.d4                             | DownSampleBlock   | 7 M   
210 | model.backbone.d4.c1                          | ConvBlock         | 1 M   
211 | model.backbone.d4.c1.module                   | Sequential        | 1 M   
212 | model.backbone.d4.c1.module.0                 | Conv2d            | 1 M   
213 | model.backbone.d4.c1.module.1                 | BatchNorm2d       | 1 K   
214 | model.backbone.d4.c1.module.2                 | Mish              | 0     
215 | model.backbone.d4.c2                          | ConvBlock         | 131 K 
216 | model.backbone.d4.c2.module                   | Sequential        | 131 K 
217 | model.backbone.d4.c2.module.0                 | Conv2d            | 131 K 
218 | model.backbone.d4.c2.module.1                 | BatchNorm2d       | 512   
219 | model.backbone.d4.c2.module.2                 | Mish              | 0     
220 | model.backbone.d4.r3                          | ResBlock          | 5 M   
221 | model.backbone.d4.r3.module_list              | ModuleList        | 5 M   
222 | model.backbone.d4.r3.module_list.0            | ModuleList        | 656 K 
223 | model.backbone.d4.r3.module_list.0.0          | ConvBlock         | 66 K  
224 | model.backbone.d4.r3.module_list.0.0.module   | Sequential        | 66 K  
225 | model.backbone.d4.r3.module_list.0.0.module.0 | Conv2d            | 65 K  
226 | model.backbone.d4.r3.module_list.0.0.module.1 | BatchNorm2d       | 512   
227 | model.backbone.d4.r3.module_list.0.0.module.2 | Mish              | 0     
228 | model.backbone.d4.r3.module_list.0.1          | ConvBlock         | 590 K 
229 | model.backbone.d4.r3.module_list.0.1.module   | Sequential        | 590 K 
230 | model.backbone.d4.r3.module_list.0.1.module.0 | Conv2d            | 589 K 
231 | model.backbone.d4.r3.module_list.0.1.module.1 | BatchNorm2d       | 512   
232 | model.backbone.d4.r3.module_list.0.1.module.2 | Mish              | 0     
233 | model.backbone.d4.r3.module_list.1            | ModuleList        | 656 K 
234 | model.backbone.d4.r3.module_list.1.0          | ConvBlock         | 66 K  
235 | model.backbone.d4.r3.module_list.1.0.module   | Sequential        | 66 K  
236 | model.backbone.d4.r3.module_list.1.0.module.0 | Conv2d            | 65 K  
237 | model.backbone.d4.r3.module_list.1.0.module.1 | BatchNorm2d       | 512   
238 | model.backbone.d4.r3.module_list.1.0.module.2 | Mish              | 0     
239 | model.backbone.d4.r3.module_list.1.1          | ConvBlock         | 590 K 
240 | model.backbone.d4.r3.module_list.1.1.module   | Sequential        | 590 K 
241 | model.backbone.d4.r3.module_list.1.1.module.0 | Conv2d            | 589 K 
242 | model.backbone.d4.r3.module_list.1.1.module.1 | BatchNorm2d       | 512   
243 | model.backbone.d4.r3.module_list.1.1.module.2 | Mish              | 0     
244 | model.backbone.d4.r3.module_list.2            | ModuleList        | 656 K 
245 | model.backbone.d4.r3.module_list.2.0          | ConvBlock         | 66 K  
246 | model.backbone.d4.r3.module_list.2.0.module   | Sequential        | 66 K  
247 | model.backbone.d4.r3.module_list.2.0.module.0 | Conv2d            | 65 K  
248 | model.backbone.d4.r3.module_list.2.0.module.1 | BatchNorm2d       | 512   
249 | model.backbone.d4.r3.module_list.2.0.module.2 | Mish              | 0     
250 | model.backbone.d4.r3.module_list.2.1          | ConvBlock         | 590 K 
251 | model.backbone.d4.r3.module_list.2.1.module   | Sequential        | 590 K 
252 | model.backbone.d4.r3.module_list.2.1.module.0 | Conv2d            | 589 K 
253 | model.backbone.d4.r3.module_list.2.1.module.1 | BatchNorm2d       | 512   
254 | model.backbone.d4.r3.module_list.2.1.module.2 | Mish              | 0     
255 | model.backbone.d4.r3.module_list.3            | ModuleList        | 656 K 
256 | model.backbone.d4.r3.module_list.3.0          | ConvBlock         | 66 K  
257 | model.backbone.d4.r3.module_list.3.0.module   | Sequential        | 66 K  
258 | model.backbone.d4.r3.module_list.3.0.module.0 | Conv2d            | 65 K  
259 | model.backbone.d4.r3.module_list.3.0.module.1 | BatchNorm2d       | 512   
260 | model.backbone.d4.r3.module_list.3.0.module.2 | Mish              | 0     
261 | model.backbone.d4.r3.module_list.3.1          | ConvBlock         | 590 K 
262 | model.backbone.d4.r3.module_list.3.1.module   | Sequential        | 590 K 
263 | model.backbone.d4.r3.module_list.3.1.module.0 | Conv2d            | 589 K 
264 | model.backbone.d4.r3.module_list.3.1.module.1 | BatchNorm2d       | 512   
265 | model.backbone.d4.r3.module_list.3.1.module.2 | Mish              | 0     
266 | model.backbone.d4.r3.module_list.4            | ModuleList        | 656 K 
267 | model.backbone.d4.r3.module_list.4.0          | ConvBlock         | 66 K  
268 | model.backbone.d4.r3.module_list.4.0.module   | Sequential        | 66 K  
269 | model.backbone.d4.r3.module_list.4.0.module.0 | Conv2d            | 65 K  
270 | model.backbone.d4.r3.module_list.4.0.module.1 | BatchNorm2d       | 512   
271 | model.backbone.d4.r3.module_list.4.0.module.2 | Mish              | 0     
272 | model.backbone.d4.r3.module_list.4.1          | ConvBlock         | 590 K 
273 | model.backbone.d4.r3.module_list.4.1.module   | Sequential        | 590 K 
274 | model.backbone.d4.r3.module_list.4.1.module.0 | Conv2d            | 589 K 
275 | model.backbone.d4.r3.module_list.4.1.module.1 | BatchNorm2d       | 512   
276 | model.backbone.d4.r3.module_list.4.1.module.2 | Mish              | 0     
277 | model.backbone.d4.r3.module_list.5            | ModuleList        | 656 K 
278 | model.backbone.d4.r3.module_list.5.0          | ConvBlock         | 66 K  
279 | model.backbone.d4.r3.module_list.5.0.module   | Sequential        | 66 K  
280 | model.backbone.d4.r3.module_list.5.0.module.0 | Conv2d            | 65 K  
281 | model.backbone.d4.r3.module_list.5.0.module.1 | BatchNorm2d       | 512   
282 | model.backbone.d4.r3.module_list.5.0.module.2 | Mish              | 0     
283 | model.backbone.d4.r3.module_list.5.1          | ConvBlock         | 590 K 
284 | model.backbone.d4.r3.module_list.5.1.module   | Sequential        | 590 K 
285 | model.backbone.d4.r3.module_list.5.1.module.0 | Conv2d            | 589 K 
286 | model.backbone.d4.r3.module_list.5.1.module.1 | BatchNorm2d       | 512   
287 | model.backbone.d4.r3.module_list.5.1.module.2 | Mish              | 0     
288 | model.backbone.d4.r3.module_list.6            | ModuleList        | 656 K 
289 | model.backbone.d4.r3.module_list.6.0          | ConvBlock         | 66 K  
290 | model.backbone.d4.r3.module_list.6.0.module   | Sequential        | 66 K  
291 | model.backbone.d4.r3.module_list.6.0.module.0 | Conv2d            | 65 K  
292 | model.backbone.d4.r3.module_list.6.0.module.1 | BatchNorm2d       | 512   
293 | model.backbone.d4.r3.module_list.6.0.module.2 | Mish              | 0     
294 | model.backbone.d4.r3.module_list.6.1          | ConvBlock         | 590 K 
295 | model.backbone.d4.r3.module_list.6.1.module   | Sequential        | 590 K 
296 | model.backbone.d4.r3.module_list.6.1.module.0 | Conv2d            | 589 K 
297 | model.backbone.d4.r3.module_list.6.1.module.1 | BatchNorm2d       | 512   
298 | model.backbone.d4.r3.module_list.6.1.module.2 | Mish              | 0     
299 | model.backbone.d4.r3.module_list.7            | ModuleList        | 656 K 
300 | model.backbone.d4.r3.module_list.7.0          | ConvBlock         | 66 K  
301 | model.backbone.d4.r3.module_list.7.0.module   | Sequential        | 66 K  
302 | model.backbone.d4.r3.module_list.7.0.module.0 | Conv2d            | 65 K  
303 | model.backbone.d4.r3.module_list.7.0.module.1 | BatchNorm2d       | 512   
304 | model.backbone.d4.r3.module_list.7.0.module.2 | Mish              | 0     
305 | model.backbone.d4.r3.module_list.7.1          | ConvBlock         | 590 K 
306 | model.backbone.d4.r3.module_list.7.1.module   | Sequential        | 590 K 
307 | model.backbone.d4.r3.module_list.7.1.module.0 | Conv2d            | 589 K 
308 | model.backbone.d4.r3.module_list.7.1.module.1 | BatchNorm2d       | 512   
309 | model.backbone.d4.r3.module_list.7.1.module.2 | Mish              | 0     
310 | model.backbone.d4.c4                          | ConvBlock         | 66 K  
311 | model.backbone.d4.c4.module                   | Sequential        | 66 K  
312 | model.backbone.d4.c4.module.0                 | Conv2d            | 65 K  
313 | model.backbone.d4.c4.module.1                 | BatchNorm2d       | 512   
314 | model.backbone.d4.c4.module.2                 | Mish              | 0     
315 | model.backbone.d4.dense_c2_c4                 | ConvBlock         | 131 K 
316 | model.backbone.d4.dense_c2_c4.module          | Sequential        | 131 K 
317 | model.backbone.d4.dense_c2_c4.module.0        | Conv2d            | 131 K 
318 | model.backbone.d4.dense_c2_c4.module.1        | BatchNorm2d       | 512   
319 | model.backbone.d4.dense_c2_c4.module.2        | Mish              | 0     
320 | model.backbone.d4.c5                          | ConvBlock         | 263 K 
321 | model.backbone.d4.c5.module                   | Sequential        | 263 K 
322 | model.backbone.d4.c5.module.0                 | Conv2d            | 262 K 
323 | model.backbone.d4.c5.module.1                 | BatchNorm2d       | 1 K   
324 | model.backbone.d4.c5.module.2                 | Mish              | 0     
325 | model.backbone.d5                             | DownSampleBlock   | 17 M  
326 | model.backbone.d5.c1                          | ConvBlock         | 4 M   
327 | model.backbone.d5.c1.module                   | Sequential        | 4 M   
328 | model.backbone.d5.c1.module.0                 | Conv2d            | 4 M   
329 | model.backbone.d5.c1.module.1                 | BatchNorm2d       | 2 K   
330 | model.backbone.d5.c1.module.2                 | Mish              | 0     
331 | model.backbone.d5.c2                          | ConvBlock         | 525 K 
332 | model.backbone.d5.c2.module                   | Sequential        | 525 K 
333 | model.backbone.d5.c2.module.0                 | Conv2d            | 524 K 
334 | model.backbone.d5.c2.module.1                 | BatchNorm2d       | 1 K   
335 | model.backbone.d5.c2.module.2                 | Mish              | 0     
336 | model.backbone.d5.r3                          | ResBlock          | 10 M  
337 | model.backbone.d5.r3.module_list              | ModuleList        | 10 M  
338 | model.backbone.d5.r3.module_list.0            | ModuleList        | 2 M   
339 | model.backbone.d5.r3.module_list.0.0          | ConvBlock         | 263 K 
340 | model.backbone.d5.r3.module_list.0.0.module   | Sequential        | 263 K 
341 | model.backbone.d5.r3.module_list.0.0.module.0 | Conv2d            | 262 K 
342 | model.backbone.d5.r3.module_list.0.0.module.1 | BatchNorm2d       | 1 K   
343 | model.backbone.d5.r3.module_list.0.0.module.2 | Mish              | 0     
344 | model.backbone.d5.r3.module_list.0.1          | ConvBlock         | 2 M   
345 | model.backbone.d5.r3.module_list.0.1.module   | Sequential        | 2 M   
346 | model.backbone.d5.r3.module_list.0.1.module.0 | Conv2d            | 2 M   
347 | model.backbone.d5.r3.module_list.0.1.module.1 | BatchNorm2d       | 1 K   
348 | model.backbone.d5.r3.module_list.0.1.module.2 | Mish              | 0     
349 | model.backbone.d5.r3.module_list.1            | ModuleList        | 2 M   
350 | model.backbone.d5.r3.module_list.1.0          | ConvBlock         | 263 K 
351 | model.backbone.d5.r3.module_list.1.0.module   | Sequential        | 263 K 
352 | model.backbone.d5.r3.module_list.1.0.module.0 | Conv2d            | 262 K 
353 | model.backbone.d5.r3.module_list.1.0.module.1 | BatchNorm2d       | 1 K   
354 | model.backbone.d5.r3.module_list.1.0.module.2 | Mish              | 0     
355 | model.backbone.d5.r3.module_list.1.1          | ConvBlock         | 2 M   
356 | model.backbone.d5.r3.module_list.1.1.module   | Sequential        | 2 M   
357 | model.backbone.d5.r3.module_list.1.1.module.0 | Conv2d            | 2 M   
358 | model.backbone.d5.r3.module_list.1.1.module.1 | BatchNorm2d       | 1 K   
359 | model.backbone.d5.r3.module_list.1.1.module.2 | Mish              | 0     
360 | model.backbone.d5.r3.module_list.2            | ModuleList        | 2 M   
361 | model.backbone.d5.r3.module_list.2.0          | ConvBlock         | 263 K 
362 | model.backbone.d5.r3.module_list.2.0.module   | Sequential        | 263 K 
363 | model.backbone.d5.r3.module_list.2.0.module.0 | Conv2d            | 262 K 
364 | model.backbone.d5.r3.module_list.2.0.module.1 | BatchNorm2d       | 1 K   
365 | model.backbone.d5.r3.module_list.2.0.module.2 | Mish              | 0     
366 | model.backbone.d5.r3.module_list.2.1          | ConvBlock         | 2 M   
367 | model.backbone.d5.r3.module_list.2.1.module   | Sequential        | 2 M   
368 | model.backbone.d5.r3.module_list.2.1.module.0 | Conv2d            | 2 M   
369 | model.backbone.d5.r3.module_list.2.1.module.1 | BatchNorm2d       | 1 K   
370 | model.backbone.d5.r3.module_list.2.1.module.2 | Mish              | 0     
371 | model.backbone.d5.r3.module_list.3            | ModuleList        | 2 M   
372 | model.backbone.d5.r3.module_list.3.0          | ConvBlock         | 263 K 
373 | model.backbone.d5.r3.module_list.3.0.module   | Sequential        | 263 K 
374 | model.backbone.d5.r3.module_list.3.0.module.0 | Conv2d            | 262 K 
375 | model.backbone.d5.r3.module_list.3.0.module.1 | BatchNorm2d       | 1 K   
376 | model.backbone.d5.r3.module_list.3.0.module.2 | Mish              | 0     
377 | model.backbone.d5.r3.module_list.3.1          | ConvBlock         | 2 M   
378 | model.backbone.d5.r3.module_list.3.1.module   | Sequential        | 2 M   
379 | model.backbone.d5.r3.module_list.3.1.module.0 | Conv2d            | 2 M   
380 | model.backbone.d5.r3.module_list.3.1.module.1 | BatchNorm2d       | 1 K   
381 | model.backbone.d5.r3.module_list.3.1.module.2 | Mish              | 0     
382 | model.backbone.d5.c4                          | ConvBlock         | 263 K 
383 | model.backbone.d5.c4.module                   | Sequential        | 263 K 
384 | model.backbone.d5.c4.module.0                 | Conv2d            | 262 K 
385 | model.backbone.d5.c4.module.1                 | BatchNorm2d       | 1 K   
386 | model.backbone.d5.c4.module.2                 | Mish              | 0     
387 | model.backbone.d5.dense_c2_c4                 | ConvBlock         | 525 K 
388 | model.backbone.d5.dense_c2_c4.module          | Sequential        | 525 K 
389 | model.backbone.d5.dense_c2_c4.module.0        | Conv2d            | 524 K 
390 | model.backbone.d5.dense_c2_c4.module.1        | BatchNorm2d       | 1 K   
391 | model.backbone.d5.dense_c2_c4.module.2        | Mish              | 0     
392 | model.backbone.d5.c5                          | ConvBlock         | 1 M   
393 | model.backbone.d5.c5.module                   | Sequential        | 1 M   
394 | model.backbone.d5.c5.module.0                 | Conv2d            | 1 M   
395 | model.backbone.d5.c5.module.1                 | BatchNorm2d       | 2 K   
396 | model.backbone.d5.c5.module.2                 | Mish              | 0     
397 | model.neck                                    | Neck              | 21 M  
398 | model.neck.c1                                 | ConvBlock         | 525 K 
399 | model.neck.c1.module                          | Sequential        | 525 K 
400 | model.neck.c1.module.0                        | Conv2d            | 524 K 
401 | model.neck.c1.module.1                        | BatchNorm2d       | 1 K   
402 | model.neck.c1.module.2                        | LeakyReLU         | 0     
403 | model.neck.c2                                 | ConvBlock         | 4 M   
404 | model.neck.c2.module                          | Sequential        | 4 M   
405 | model.neck.c2.module.0                        | Conv2d            | 4 M   
406 | model.neck.c2.module.1                        | BatchNorm2d       | 2 K   
407 | model.neck.c2.module.2                        | LeakyReLU         | 0     
408 | model.neck.c3                                 | ConvBlock         | 525 K 
409 | model.neck.c3.module                          | Sequential        | 525 K 
410 | model.neck.c3.module.0                        | Conv2d            | 524 K 
411 | model.neck.c3.module.1                        | BatchNorm2d       | 1 K   
412 | model.neck.c3.module.2                        | LeakyReLU         | 0     
413 | model.neck.mp4_1                              | MaxPool2d         | 0     
414 | model.neck.mp4_2                              | MaxPool2d         | 0     
415 | model.neck.mp4_3                              | MaxPool2d         | 0     
416 | model.neck.c5                                 | ConvBlock         | 1 M   
417 | model.neck.c5.module                          | Sequential        | 1 M   
418 | model.neck.c5.module.0                        | Conv2d            | 1 M   
419 | model.neck.c5.module.1                        | BatchNorm2d       | 1 K   
420 | model.neck.c5.module.2                        | LeakyReLU         | 0     
421 | model.neck.c6                                 | ConvBlock         | 4 M   
422 | model.neck.c6.module                          | Sequential        | 4 M   
423 | model.neck.c6.module.0                        | Conv2d            | 4 M   
424 | model.neck.c6.module.1                        | BatchNorm2d       | 2 K   
425 | model.neck.c6.module.2                        | LeakyReLU         | 0     
426 | model.neck.c7                                 | ConvBlock         | 525 K 
427 | model.neck.c7.module                          | Sequential        | 525 K 
428 | model.neck.c7.module.0                        | Conv2d            | 524 K 
429 | model.neck.c7.module.1                        | BatchNorm2d       | 1 K   
430 | model.neck.c7.module.2                        | LeakyReLU         | 0     
431 | model.neck.PAN8                               | PAN_Layer         | 3 M   
432 | model.neck.PAN8.c1                            | ConvBlock         | 131 K 
433 | model.neck.PAN8.c1.module                     | Sequential        | 131 K 
434 | model.neck.PAN8.c1.module.0                   | Conv2d            | 131 K 
435 | model.neck.PAN8.c1.module.1                   | BatchNorm2d       | 512   
436 | model.neck.PAN8.c1.module.2                   | LeakyReLU         | 0     
437 | model.neck.PAN8.u2                            | Upsample          | 0     
438 | model.neck.PAN8.c2_from_upsampled             | ConvBlock         | 131 K 
439 | model.neck.PAN8.c2_from_upsampled.module      | Sequential        | 131 K 
440 | model.neck.PAN8.c2_from_upsampled.module.0    | Conv2d            | 131 K 
441 | model.neck.PAN8.c2_from_upsampled.module.1    | BatchNorm2d       | 512   
442 | model.neck.PAN8.c2_from_upsampled.module.2    | LeakyReLU         | 0     
443 | model.neck.PAN8.c3                            | ConvBlock         | 131 K 
444 | model.neck.PAN8.c3.module                     | Sequential        | 131 K 
445 | model.neck.PAN8.c3.module.0                   | Conv2d            | 131 K 
446 | model.neck.PAN8.c3.module.1                   | BatchNorm2d       | 512   
447 | model.neck.PAN8.c3.module.2                   | LeakyReLU         | 0     
448 | model.neck.PAN8.c4                            | ConvBlock         | 1 M   
449 | model.neck.PAN8.c4.module                     | Sequential        | 1 M   
450 | model.neck.PAN8.c4.module.0                   | Conv2d            | 1 M   
451 | model.neck.PAN8.c4.module.1                   | BatchNorm2d       | 1 K   
452 | model.neck.PAN8.c4.module.2                   | LeakyReLU         | 0     
453 | model.neck.PAN8.c5                            | ConvBlock         | 131 K 
454 | model.neck.PAN8.c5.module                     | Sequential        | 131 K 
455 | model.neck.PAN8.c5.module.0                   | Conv2d            | 131 K 
456 | model.neck.PAN8.c5.module.1                   | BatchNorm2d       | 512   
457 | model.neck.PAN8.c5.module.2                   | LeakyReLU         | 0     
458 | model.neck.PAN8.c6                            | ConvBlock         | 1 M   
459 | model.neck.PAN8.c6.module                     | Sequential        | 1 M   
460 | model.neck.PAN8.c6.module.0                   | Conv2d            | 1 M   
461 | model.neck.PAN8.c6.module.1                   | BatchNorm2d       | 1 K   
462 | model.neck.PAN8.c6.module.2                   | LeakyReLU         | 0     
463 | model.neck.PAN8.c7                            | ConvBlock         | 131 K 
464 | model.neck.PAN8.c7.module                     | Sequential        | 131 K 
465 | model.neck.PAN8.c7.module.0                   | Conv2d            | 131 K 
466 | model.neck.PAN8.c7.module.1                   | BatchNorm2d       | 512   
467 | model.neck.PAN8.c7.module.2                   | LeakyReLU         | 0     
468 | model.neck.PAN9                               | PAN_Layer         | 755 K 
469 | model.neck.PAN9.c1                            | ConvBlock         | 33 K  
470 | model.neck.PAN9.c1.module                     | Sequential        | 33 K  
471 | model.neck.PAN9.c1.module.0                   | Conv2d            | 32 K  
472 | model.neck.PAN9.c1.module.1                   | BatchNorm2d       | 256   
473 | model.neck.PAN9.c1.module.2                   | LeakyReLU         | 0     
474 | model.neck.PAN9.u2                            | Upsample          | 0     
475 | model.neck.PAN9.c2_from_upsampled             | ConvBlock         | 33 K  
476 | model.neck.PAN9.c2_from_upsampled.module      | Sequential        | 33 K  
477 | model.neck.PAN9.c2_from_upsampled.module.0    | Conv2d            | 32 K  
478 | model.neck.PAN9.c2_from_upsampled.module.1    | BatchNorm2d       | 256   
479 | model.neck.PAN9.c2_from_upsampled.module.2    | LeakyReLU         | 0     
480 | model.neck.PAN9.c3                            | ConvBlock         | 33 K  
481 | model.neck.PAN9.c3.module                     | Sequential        | 33 K  
482 | model.neck.PAN9.c3.module.0                   | Conv2d            | 32 K  
483 | model.neck.PAN9.c3.module.1                   | BatchNorm2d       | 256   
484 | model.neck.PAN9.c3.module.2                   | LeakyReLU         | 0     
485 | model.neck.PAN9.c4                            | ConvBlock         | 295 K 
486 | model.neck.PAN9.c4.module                     | Sequential        | 295 K 
487 | model.neck.PAN9.c4.module.0                   | Conv2d            | 294 K 
488 | model.neck.PAN9.c4.module.1                   | BatchNorm2d       | 512   
489 | model.neck.PAN9.c4.module.2                   | LeakyReLU         | 0     
490 | model.neck.PAN9.c5                            | ConvBlock         | 33 K  
491 | model.neck.PAN9.c5.module                     | Sequential        | 33 K  
492 | model.neck.PAN9.c5.module.0                   | Conv2d            | 32 K  
493 | model.neck.PAN9.c5.module.1                   | BatchNorm2d       | 256   
494 | model.neck.PAN9.c5.module.2                   | LeakyReLU         | 0     
495 | model.neck.PAN9.c6                            | ConvBlock         | 295 K 
496 | model.neck.PAN9.c6.module                     | Sequential        | 295 K 
497 | model.neck.PAN9.c6.module.0                   | Conv2d            | 294 K 
498 | model.neck.PAN9.c6.module.1                   | BatchNorm2d       | 512   
499 | model.neck.PAN9.c6.module.2                   | LeakyReLU         | 0     
500 | model.neck.PAN9.c7                            | ConvBlock         | 33 K  
501 | model.neck.PAN9.c7.module                     | Sequential        | 33 K  
502 | model.neck.PAN9.c7.module.0                   | Conv2d            | 32 K  
503 | model.neck.PAN9.c7.module.1                   | BatchNorm2d       | 256   
504 | model.neck.PAN9.c7.module.2                   | LeakyReLU         | 0     
505 | model.neck.ACFF_0                             | ACFF              | 4 M   
506 | model.neck.ACFF_0.stride_level_1              | ConvBlock         | 1 M   
507 | model.neck.ACFF_0.stride_level_1.module       | Sequential        | 1 M   
508 | model.neck.ACFF_0.stride_level_1.module.0     | Conv2d            | 1 M   
509 | model.neck.ACFF_0.stride_level_1.module.1     | BatchNorm2d       | 1 K   
510 | model.neck.ACFF_0.stride_level_1.module.2     | LeakyReLU         | 0     
511 | model.neck.ACFF_0.stride_level_2              | ConvBlock         | 590 K 
512 | model.neck.ACFF_0.stride_level_2.module       | Sequential        | 590 K 
513 | model.neck.ACFF_0.stride_level_2.module.0     | Conv2d            | 589 K 
514 | model.neck.ACFF_0.stride_level_2.module.1     | BatchNorm2d       | 1 K   
515 | model.neck.ACFF_0.stride_level_2.module.2     | LeakyReLU         | 0     
516 | model.neck.ACFF_0.expand                      | ConvBlock         | 2 M   
517 | model.neck.ACFF_0.expand.module               | Sequential        | 2 M   
518 | model.neck.ACFF_0.expand.module.0             | Conv2d            | 2 M   
519 | model.neck.ACFF_0.expand.module.1             | BatchNorm2d       | 1 K   
520 | model.neck.ACFF_0.expand.module.2             | LeakyReLU         | 0     
521 | model.neck.ACFF_1                             | ACFF              | 1 M   
522 | model.neck.ACFF_1.compress_level_0            | ConvBlock         | 131 K 
523 | model.neck.ACFF_1.compress_level_0.module     | Sequential        | 131 K 
524 | model.neck.ACFF_1.compress_level_0.module.0   | Conv2d            | 131 K 
525 | model.neck.ACFF_1.compress_level_0.module.1   | BatchNorm2d       | 512   
526 | model.neck.ACFF_1.compress_level_0.module.2   | LeakyReLU         | 0     
527 | model.neck.ACFF_1.stride_level_2              | ConvBlock         | 295 K 
528 | model.neck.ACFF_1.stride_level_2.module       | Sequential        | 295 K 
529 | model.neck.ACFF_1.stride_level_2.module.0     | Conv2d            | 294 K 
530 | model.neck.ACFF_1.stride_level_2.module.1     | BatchNorm2d       | 512   
531 | model.neck.ACFF_1.stride_level_2.module.2     | LeakyReLU         | 0     
532 | model.neck.ACFF_1.expand                      | ConvBlock         | 590 K 
533 | model.neck.ACFF_1.expand.module               | Sequential        | 590 K 
534 | model.neck.ACFF_1.expand.module.0             | Conv2d            | 589 K 
535 | model.neck.ACFF_1.expand.module.1             | BatchNorm2d       | 512   
536 | model.neck.ACFF_1.expand.module.2             | LeakyReLU         | 0     
537 | model.neck.ACFF_2                             | ACFF              | 247 K 
538 | model.neck.ACFF_2.compress_level_0            | ConvBlock         | 65 K  
539 | model.neck.ACFF_2.compress_level_0.module     | Sequential        | 65 K  
540 | model.neck.ACFF_2.compress_level_0.module.0   | Conv2d            | 65 K  
541 | model.neck.ACFF_2.compress_level_0.module.1   | BatchNorm2d       | 256   
542 | model.neck.ACFF_2.compress_level_0.module.2   | LeakyReLU         | 0     
543 | model.neck.ACFF_2.compress_level_1            | ConvBlock         | 33 K  
544 | model.neck.ACFF_2.compress_level_1.module     | Sequential        | 33 K  
545 | model.neck.ACFF_2.compress_level_1.module.0   | Conv2d            | 32 K  
546 | model.neck.ACFF_2.compress_level_1.module.1   | BatchNorm2d       | 256   
547 | model.neck.ACFF_2.compress_level_1.module.2   | LeakyReLU         | 0     
548 | model.neck.ACFF_2.expand                      | ConvBlock         | 147 K 
549 | model.neck.ACFF_2.expand.module               | Sequential        | 147 K 
550 | model.neck.ACFF_2.expand.module.0             | Conv2d            | 147 K 
551 | model.neck.ACFF_2.expand.module.1             | BatchNorm2d       | 256   
552 | model.neck.ACFF_2.expand.module.2             | LeakyReLU         | 0     
553 | model.head                                    | Head              | 22 M  
554 | model.head.ho1                                | HeadOutput        | 430 K 
555 | model.head.ho1.c1                             | ConvBlock         | 295 K 
556 | model.head.ho1.c1.module                      | Sequential        | 295 K 
557 | model.head.ho1.c1.module.0                    | Conv2d            | 294 K 
558 | model.head.ho1.c1.module.1                    | BatchNorm2d       | 512   
559 | model.head.ho1.c1.module.2                    | LeakyReLU         | 0     
560 | model.head.ho1.c2                             | ConvBlock         | 134 K 
561 | model.head.ho1.c2.module                      | Sequential        | 134 K 
562 | model.head.ho1.c2.module.0                    | Conv2d            | 134 K 
563 | model.head.hp2                                | HeadPreprocessing | 3 M   
564 | model.head.hp2.c1                             | ConvBlock         | 295 K 
565 | model.head.hp2.c1.module                      | Sequential        | 295 K 
566 | model.head.hp2.c1.module.0                    | Conv2d            | 294 K 
567 | model.head.hp2.c1.module.1                    | BatchNorm2d       | 512   
568 | model.head.hp2.c1.module.2                    | LeakyReLU         | 0     
569 | model.head.hp2.c2                             | ConvBlock         | 131 K 
570 | model.head.hp2.c2.module                      | Sequential        | 131 K 
571 | model.head.hp2.c2.module.0                    | Conv2d            | 131 K 
572 | model.head.hp2.c2.module.1                    | BatchNorm2d       | 512   
573 | model.head.hp2.c2.module.2                    | LeakyReLU         | 0     
574 | model.head.hp2.c3                             | ConvBlock         | 1 M   
575 | model.head.hp2.c3.module                      | Sequential        | 1 M   
576 | model.head.hp2.c3.module.0                    | Conv2d            | 1 M   
577 | model.head.hp2.c3.module.1                    | BatchNorm2d       | 1 K   
578 | model.head.hp2.c3.module.2                    | LeakyReLU         | 0     
579 | model.head.hp2.c4                             | ConvBlock         | 131 K 
580 | model.head.hp2.c4.module                      | Sequential        | 131 K 
581 | model.head.hp2.c4.module.0                    | Conv2d            | 131 K 
582 | model.head.hp2.c4.module.1                    | BatchNorm2d       | 512   
583 | model.head.hp2.c4.module.2                    | LeakyReLU         | 0     
584 | model.head.hp2.c5                             | ConvBlock         | 1 M   
585 | model.head.hp2.c5.module                      | Sequential        | 1 M   
586 | model.head.hp2.c5.module.0                    | Conv2d            | 1 M   
587 | model.head.hp2.c5.module.1                    | BatchNorm2d       | 1 K   
588 | model.head.hp2.c5.module.2                    | LeakyReLU         | 0     
589 | model.head.hp2.c6                             | ConvBlock         | 131 K 
590 | model.head.hp2.c6.module                      | Sequential        | 131 K 
591 | model.head.hp2.c6.module.0                    | Conv2d            | 131 K 
592 | model.head.hp2.c6.module.1                    | BatchNorm2d       | 512   
593 | model.head.hp2.c6.module.2                    | LeakyReLU         | 0     
594 | model.head.ho2                                | HeadOutput        | 1 M   
595 | model.head.ho2.c1                             | ConvBlock         | 1 M   
596 | model.head.ho2.c1.module                      | Sequential        | 1 M   
597 | model.head.ho2.c1.module.0                    | Conv2d            | 1 M   
598 | model.head.ho2.c1.module.1                    | BatchNorm2d       | 1 K   
599 | model.head.ho2.c1.module.2                    | LeakyReLU         | 0     
600 | model.head.ho2.c2                             | ConvBlock         | 269 K 
601 | model.head.ho2.c2.module                      | Sequential        | 269 K 
602 | model.head.ho2.c2.module.0                    | Conv2d            | 269 K 
603 | model.head.hp3                                | HeadPreprocessing | 12 M  
604 | model.head.hp3.c1                             | ConvBlock         | 1 M   
605 | model.head.hp3.c1.module                      | Sequential        | 1 M   
606 | model.head.hp3.c1.module.0                    | Conv2d            | 1 M   
607 | model.head.hp3.c1.module.1                    | BatchNorm2d       | 1 K   
608 | model.head.hp3.c1.module.2                    | LeakyReLU         | 0     
609 | model.head.hp3.c2                             | ConvBlock         | 525 K 
610 | model.head.hp3.c2.module                      | Sequential        | 525 K 
611 | model.head.hp3.c2.module.0                    | Conv2d            | 524 K 
612 | model.head.hp3.c2.module.1                    | BatchNorm2d       | 1 K   
613 | model.head.hp3.c2.module.2                    | LeakyReLU         | 0     
614 | model.head.hp3.c3                             | ConvBlock         | 4 M   
615 | model.head.hp3.c3.module                      | Sequential        | 4 M   
616 | model.head.hp3.c3.module.0                    | Conv2d            | 4 M   
617 | model.head.hp3.c3.module.1                    | BatchNorm2d       | 2 K   
618 | model.head.hp3.c3.module.2                    | LeakyReLU         | 0     
619 | model.head.hp3.c4                             | ConvBlock         | 525 K 
620 | model.head.hp3.c4.module                      | Sequential        | 525 K 
621 | model.head.hp3.c4.module.0                    | Conv2d            | 524 K 
622 | model.head.hp3.c4.module.1                    | BatchNorm2d       | 1 K   
623 | model.head.hp3.c4.module.2                    | LeakyReLU         | 0     
624 | model.head.hp3.c5                             | ConvBlock         | 4 M   
625 | model.head.hp3.c5.module                      | Sequential        | 4 M   
626 | model.head.hp3.c5.module.0                    | Conv2d            | 4 M   
627 | model.head.hp3.c5.module.1                    | BatchNorm2d       | 2 K   
628 | model.head.hp3.c5.module.2                    | LeakyReLU         | 0     
629 | model.head.hp3.c6                             | ConvBlock         | 525 K 
630 | model.head.hp3.c6.module                      | Sequential        | 525 K 
631 | model.head.hp3.c6.module.0                    | Conv2d            | 524 K 
632 | model.head.hp3.c6.module.1                    | BatchNorm2d       | 1 K   
633 | model.head.hp3.c6.module.2                    | LeakyReLU         | 0     
634 | model.head.ho3                                | HeadOutput        | 5 M   
635 | model.head.ho3.c1                             | ConvBlock         | 4 M   
636 | model.head.ho3.c1.module                      | Sequential        | 4 M   
637 | model.head.ho3.c1.module.0                    | Conv2d            | 4 M   
638 | model.head.ho3.c1.module.1                    | BatchNorm2d       | 2 K   
639 | model.head.ho3.c1.module.2                    | LeakyReLU         | 0     
640 | model.head.ho3.c2                             | ConvBlock         | 538 K 
641 | model.head.ho3.c2.module                      | Sequential        | 538 K 
642 | model.head.ho3.c2.module.0                    | Conv2d            | 538 K 
643 | model.yolo1                                   | YOLOLayer         | 0     
644 | model.yolo2                                   | YOLOLayer         | 0     
645 | model.yolo3                                   | YOLOLayer         | 0     

Ranger optimizer loaded. 
Gradient Centralization usage = True
GC applied to both conv and fc layers

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-10-0524224c2dd3> in <module>
----> 1 r = t.lr_find(m, min_lr=1e-10, max_lr=1, early_stop_threshold=None)
      2 r.plot()

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/pytorch_lightning/trainer/lr_finder.py in lr_find(self, model, train_dataloader, val_dataloaders, min_lr, max_lr, num_training, mode, early_stop_threshold, num_accumulation_steps)
    168         self.fit(model,
    169                  train_dataloader=train_dataloader,
--> 170                  val_dataloaders=val_dataloaders)
    171 
    172         # Prompt if we stopped early

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py in fit(self, model, train_dataloader, val_dataloaders)
    885             self.optimizers, self.lr_schedulers, self.optimizer_frequencies = self.init_optimizers(model)
    886 
--> 887             self.run_pretrain_routine(model)
    888 
    889         # return 1 when finished

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py in run_pretrain_routine(self, model)
    999                                           self.val_dataloaders,
   1000                                           self.num_sanity_val_steps,
-> 1001                                           False)
   1002             _, _, _, callback_metrics, _ = self.process_output(eval_results)
   1003 

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/pytorch_lightning/trainer/evaluation_loop.py in _evaluate(self, model, dataloaders, max_batches, test_mode)
    254                 dataloader = dataloader.per_device_loader(device)
    255 
--> 256             for batch_idx, batch in enumerate(dataloader):
    257                 if batch is None:
    258                     continue

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/torch/utils/data/dataloader.py in __next__(self)
    519             if self._sampler_iter is None:
    520                 self._reset()
--> 521             data = self._next_data()
    522             self._num_yielded += 1
    523             if self._dataset_kind == _DatasetKind.Iterable and \

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/torch/utils/data/dataloader.py in _next_data(self)
   1201             else:
   1202                 del self._task_info[idx]
-> 1203                 return self._process_data(data)
   1204 
   1205     def _try_put_index(self):

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/torch/utils/data/dataloader.py in _process_data(self, data)
   1227         self._try_put_index()
   1228         if isinstance(data, ExceptionWrapper):
-> 1229             data.reraise()
   1230         return data
   1231 

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/torch/_utils.py in reraise(self)
    423             # have message field
    424             raise self.exc_type(message=msg)
--> 425         raise self.exc_type(msg)
    426 
    427 

TypeError: function takes exactly 5 arguments (1 given)

Originally posted by @a-haja in #18 (comment)

It is not possible to run the app with the latest pl version.

@VCasecnikovs

Which pyTorch version are you using? Can you please provide us with a requirments.txt file?

I am trying to run "Training YOLOv4 .ipynb". I am facing different errors. for example: I needed to change from pytorch_lightning.callbacks import LearningRateLogger to from pytorch_lightning.callbacks import LearningRateMonitor as I have the following pytorch-ligthning version

$ conda list | grep pytorch-lightning
pytorch-lightning         1.3.8                    pypi_0    pypi

Now, I am getting the following error:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-27-44f6feb2fd1c> in <module>
----> 1 m = YOLOv4PL(hparams2)

<ipython-input-25-96522b0b7356> in __init__(self, hparams)
      9         print (hparams)
     10 
---> 11         self.hparams = hparams
     12 
     13         self.train_ds = ListDataset(hparams.train_ds, train=True, img_extensions=hparams.img_extensions)

~/anaconda3/envs/django_pyimagej_tf/lib/python3.7/site-packages/torch/nn/modules/module.py in __setattr__(self, name, value)
   1176                     buffers[name] = value
   1177                 else:
-> 1178                     object.__setattr__(self, name, value)
   1179 
   1180     def __delattr__(self, name):

AttributeError: can't set attribute

Do you have any idea why the hparams cannot be setted? I would assume that it is because of the different versions of pytorch versions.

How to run the code?

What are the step to run the model on sample image?
What are the required package list?

Could you please clearly state these instructions?

Maybe the dropblock is not right?

Thanks for your nice work!
But I have a question about dropblock.The original paper writes "We only sample mask from shaded green region in which each sampled entry can expanded to a mask fully contained inside the feature map"
image
So the mask sample point will smaller than the input and then expanded to the input size. In your code, it seems like the sample points get from the input size.
Am I right? Thanks again for your GREAT work!

IoU ignore thresh only applied to noobj

Hi,
can you explain why the IoU ignore threshold is only applied to the no-object mask, but not to the object mask (or why the no-object mask is not simply the inversion of the object mask in general):

noobj_mask[b[i], anchor_ious > ignore_thres, gj[i], gi[i]] = 0

I would have expected
obj_mask[b[i], anchor_ious < ignore_thres, gj[i], gi[i]] = 0 in addition.

Error using F.binary_cross_entropy in model.py with autocast

This is a really great repo and I'm enjoying reading it. I've noticed it throws an error in lines 925:926 of model.py, since the target tensors are masks (either 0. or 1.).

The complaint is that this function can't be autocast, and one should use F.binary_cross_entropy_with_logits instead. I'm curious if you have encountered this and whether it is worth updating your model.py to prevent this error?

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.