mandelakori commited on
Commit
d5850ce
1 Parent(s): 1c59a0c

Upload folder using huggingface_hub

Browse files
Files changed (6) hide show
  1. .gitattributes +9 -27
  2. README.md +118 -0
  3. config.json +226 -0
  4. model.safetensors +3 -0
  5. preprocessor_config.json +17 -0
  6. pytorch_model.bin +3 -0
.gitattributes CHANGED
@@ -1,35 +1,17 @@
1
- *.7z filter=lfs diff=lfs merge=lfs -text
2
- *.arrow filter=lfs diff=lfs merge=lfs -text
3
  *.bin filter=lfs diff=lfs merge=lfs -text
4
- *.bz2 filter=lfs diff=lfs merge=lfs -text
5
- *.ckpt filter=lfs diff=lfs merge=lfs -text
6
- *.ftz filter=lfs diff=lfs merge=lfs -text
7
- *.gz filter=lfs diff=lfs merge=lfs -text
8
  *.h5 filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
9
  *.joblib filter=lfs diff=lfs merge=lfs -text
10
- *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
- *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
  *.model filter=lfs diff=lfs merge=lfs -text
13
  *.msgpack filter=lfs diff=lfs merge=lfs -text
14
- *.npy filter=lfs diff=lfs merge=lfs -text
15
- *.npz filter=lfs diff=lfs merge=lfs -text
16
- *.onnx filter=lfs diff=lfs merge=lfs -text
17
- *.ot filter=lfs diff=lfs merge=lfs -text
18
- *.parquet filter=lfs diff=lfs merge=lfs -text
19
  *.pb filter=lfs diff=lfs merge=lfs -text
20
- *.pickle filter=lfs diff=lfs merge=lfs -text
21
- *.pkl filter=lfs diff=lfs merge=lfs -text
22
  *.pt filter=lfs diff=lfs merge=lfs -text
23
  *.pth filter=lfs diff=lfs merge=lfs -text
24
- *.rar filter=lfs diff=lfs merge=lfs -text
25
- *.safetensors filter=lfs diff=lfs merge=lfs -text
26
- saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
- *.tar.* filter=lfs diff=lfs merge=lfs -text
28
- *.tar filter=lfs diff=lfs merge=lfs -text
29
- *.tflite filter=lfs diff=lfs merge=lfs -text
30
- *.tgz filter=lfs diff=lfs merge=lfs -text
31
- *.wasm filter=lfs diff=lfs merge=lfs -text
32
- *.xz filter=lfs diff=lfs merge=lfs -text
33
- *.zip filter=lfs diff=lfs merge=lfs -text
34
- *.zst filter=lfs diff=lfs merge=lfs -text
35
- *tfevents* filter=lfs diff=lfs merge=lfs -text
 
1
+ *.bin.* filter=lfs diff=lfs merge=lfs -text
2
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
3
  *.bin filter=lfs diff=lfs merge=lfs -text
 
 
 
 
4
  *.h5 filter=lfs diff=lfs merge=lfs -text
5
+ *.tflite filter=lfs diff=lfs merge=lfs -text
6
+ *.tar.gz filter=lfs diff=lfs merge=lfs -text
7
+ *.ot filter=lfs diff=lfs merge=lfs -text
8
+ *.onnx filter=lfs diff=lfs merge=lfs -text
9
+ *.arrow filter=lfs diff=lfs merge=lfs -text
10
+ *.ftz filter=lfs diff=lfs merge=lfs -text
11
  *.joblib filter=lfs diff=lfs merge=lfs -text
 
 
12
  *.model filter=lfs diff=lfs merge=lfs -text
13
  *.msgpack filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
14
  *.pb filter=lfs diff=lfs merge=lfs -text
 
 
15
  *.pt filter=lfs diff=lfs merge=lfs -text
16
  *.pth filter=lfs diff=lfs merge=lfs -text
17
+ model.safetensors filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
README.md ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ tags:
4
+ - object-detection
5
+ - vision
6
+ datasets:
7
+ - coco
8
+ widget:
9
+ - src: https://huggingface.co/datasets/mishig/sample_images/resolve/main/savanna.jpg
10
+ example_title: Savanna
11
+ - src: https://huggingface.co/datasets/mishig/sample_images/resolve/main/football-match.jpg
12
+ example_title: Football Match
13
+ - src: https://huggingface.co/datasets/mishig/sample_images/resolve/main/airport.jpg
14
+ example_title: Airport
15
+ ---
16
+
17
+ # DETR (End-to-End Object Detection) model with ResNet-50 backbone
18
+
19
+ DEtection TRansformer (DETR) model trained end-to-end on COCO 2017 object detection (118k annotated images). It was introduced in the paper [End-to-End Object Detection with Transformers](https://arxiv.org/abs/2005.12872) by Carion et al. and first released in [this repository](https://github.com/facebookresearch/detr).
20
+
21
+ Disclaimer: The team releasing DETR did not write a model card for this model so this model card has been written by the Hugging Face team.
22
+
23
+ ## Model description
24
+
25
+ The DETR model is an encoder-decoder transformer with a convolutional backbone. Two heads are added on top of the decoder outputs in order to perform object detection: a linear layer for the class labels and a MLP (multi-layer perceptron) for the bounding boxes. The model uses so-called object queries to detect objects in an image. Each object query looks for a particular object in the image. For COCO, the number of object queries is set to 100.
26
+
27
+ The model is trained using a "bipartite matching loss": one compares the predicted classes + bounding boxes of each of the N = 100 object queries to the ground truth annotations, padded up to the same length N (so if an image only contains 4 objects, 96 annotations will just have a "no object" as class and "no bounding box" as bounding box). The Hungarian matching algorithm is used to create an optimal one-to-one mapping between each of the N queries and each of the N annotations. Next, standard cross-entropy (for the classes) and a linear combination of the L1 and generalized IoU loss (for the bounding boxes) are used to optimize the parameters of the model.
28
+
29
+ ![model image](https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/model_doc/detr_architecture.png)
30
+
31
+ ## Intended uses & limitations
32
+
33
+ You can use the raw model for object detection. See the [model hub](https://huggingface.co/models?search=facebook/detr) to look for all available DETR models.
34
+
35
+ ### How to use
36
+
37
+ Here is how to use this model:
38
+
39
+ ```python
40
+ from transformers import DetrImageProcessor, DetrForObjectDetection
41
+ import torch
42
+ from PIL import Image
43
+ import requests
44
+
45
+ url = "http://images.cocodataset.org/val2017/000000039769.jpg"
46
+ image = Image.open(requests.get(url, stream=True).raw)
47
+
48
+ # you can specify the revision tag if you don't want the timm dependency
49
+ processor = DetrImageProcessor.from_pretrained("facebook/detr-resnet-50", revision="no_timm")
50
+ model = DetrForObjectDetection.from_pretrained("facebook/detr-resnet-50", revision="no_timm")
51
+
52
+ inputs = processor(images=image, return_tensors="pt")
53
+ outputs = model(**inputs)
54
+
55
+ # convert outputs (bounding boxes and class logits) to COCO API
56
+ # let's only keep detections with score > 0.9
57
+ target_sizes = torch.tensor([image.size[::-1]])
58
+ results = processor.post_process_object_detection(outputs, target_sizes=target_sizes, threshold=0.9)[0]
59
+
60
+ for score, label, box in zip(results["scores"], results["labels"], results["boxes"]):
61
+ box = [round(i, 2) for i in box.tolist()]
62
+ print(
63
+ f"Detected {model.config.id2label[label.item()]} with confidence "
64
+ f"{round(score.item(), 3)} at location {box}"
65
+ )
66
+ ```
67
+ This should output:
68
+ ```
69
+ Detected remote with confidence 0.998 at location [40.16, 70.81, 175.55, 117.98]
70
+ Detected remote with confidence 0.996 at location [333.24, 72.55, 368.33, 187.66]
71
+ Detected couch with confidence 0.995 at location [-0.02, 1.15, 639.73, 473.76]
72
+ Detected cat with confidence 0.999 at location [13.24, 52.05, 314.02, 470.93]
73
+ Detected cat with confidence 0.999 at location [345.4, 23.85, 640.37, 368.72]
74
+ ```
75
+
76
+ Currently, both the feature extractor and model support PyTorch.
77
+
78
+ ## Training data
79
+
80
+ The DETR model was trained on [COCO 2017 object detection](https://cocodataset.org/#download), a dataset consisting of 118k/5k annotated images for training/validation respectively.
81
+
82
+ ## Training procedure
83
+
84
+ ### Preprocessing
85
+
86
+ The exact details of preprocessing of images during training/validation can be found [here](https://github.com/google-research/vision_transformer/blob/master/vit_jax/input_pipeline.py).
87
+
88
+ Images are resized/rescaled such that the shortest side is at least 800 pixels and the largest side at most 1333 pixels, and normalized across the RGB channels with the ImageNet mean (0.485, 0.456, 0.406) and standard deviation (0.229, 0.224, 0.225).
89
+
90
+ ### Training
91
+
92
+ The model was trained for 300 epochs on 16 V100 GPUs. This takes 3 days, with 4 images per GPU (hence a total batch size of 64).
93
+
94
+ ## Evaluation results
95
+
96
+ This model achieves an AP (average precision) of **42.0** on COCO 2017 validation. For more details regarding evaluation results, we refer to table 1 of the original paper.
97
+ ### BibTeX entry and citation info
98
+
99
+ ```bibtex
100
+ @article{DBLP:journals/corr/abs-2005-12872,
101
+ author = {Nicolas Carion and
102
+ Francisco Massa and
103
+ Gabriel Synnaeve and
104
+ Nicolas Usunier and
105
+ Alexander Kirillov and
106
+ Sergey Zagoruyko},
107
+ title = {End-to-End Object Detection with Transformers},
108
+ journal = {CoRR},
109
+ volume = {abs/2005.12872},
110
+ year = {2020},
111
+ url = {https://arxiv.org/abs/2005.12872},
112
+ archivePrefix = {arXiv},
113
+ eprint = {2005.12872},
114
+ timestamp = {Thu, 28 May 2020 17:38:09 +0200},
115
+ biburl = {https://dblp.org/rec/journals/corr/abs-2005-12872.bib},
116
+ bibsource = {dblp computer science bibliography, https://dblp.org}
117
+ }
118
+ ```
config.json ADDED
@@ -0,0 +1,226 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "activation_dropout": 0.0,
3
+ "activation_function": "relu",
4
+ "architectures": [
5
+ "DetrForObjectDetection"
6
+ ],
7
+ "attention_dropout": 0.0,
8
+ "auxiliary_loss": false,
9
+ "backbone": "resnet50",
10
+ "bbox_cost": 5,
11
+ "bbox_loss_coefficient": 5,
12
+ "class_cost": 1,
13
+ "classifier_dropout": 0.0,
14
+ "d_model": 256,
15
+ "decoder_attention_heads": 8,
16
+ "decoder_ffn_dim": 2048,
17
+ "decoder_layerdrop": 0.0,
18
+ "decoder_layers": 6,
19
+ "dice_loss_coefficient": 1,
20
+ "dilation": false,
21
+ "dropout": 0.1,
22
+ "encoder_attention_heads": 8,
23
+ "encoder_ffn_dim": 2048,
24
+ "encoder_layerdrop": 0.0,
25
+ "encoder_layers": 6,
26
+ "eos_coefficient": 0.1,
27
+ "giou_cost": 2,
28
+ "giou_loss_coefficient": 2,
29
+ "id2label": {
30
+ "0": "N/A",
31
+ "1": "person",
32
+ "10": "traffic light",
33
+ "11": "fire hydrant",
34
+ "12": "street sign",
35
+ "13": "stop sign",
36
+ "14": "parking meter",
37
+ "15": "bench",
38
+ "16": "bird",
39
+ "17": "cat",
40
+ "18": "dog",
41
+ "19": "horse",
42
+ "2": "bicycle",
43
+ "20": "sheep",
44
+ "21": "cow",
45
+ "22": "elephant",
46
+ "23": "bear",
47
+ "24": "zebra",
48
+ "25": "giraffe",
49
+ "26": "hat",
50
+ "27": "backpack",
51
+ "28": "umbrella",
52
+ "29": "shoe",
53
+ "3": "car",
54
+ "30": "eye glasses",
55
+ "31": "handbag",
56
+ "32": "tie",
57
+ "33": "suitcase",
58
+ "34": "frisbee",
59
+ "35": "skis",
60
+ "36": "snowboard",
61
+ "37": "sports ball",
62
+ "38": "kite",
63
+ "39": "baseball bat",
64
+ "4": "motorcycle",
65
+ "40": "baseball glove",
66
+ "41": "skateboard",
67
+ "42": "surfboard",
68
+ "43": "tennis racket",
69
+ "44": "bottle",
70
+ "45": "plate",
71
+ "46": "wine glass",
72
+ "47": "cup",
73
+ "48": "fork",
74
+ "49": "knife",
75
+ "5": "airplane",
76
+ "50": "spoon",
77
+ "51": "bowl",
78
+ "52": "banana",
79
+ "53": "apple",
80
+ "54": "sandwich",
81
+ "55": "orange",
82
+ "56": "broccoli",
83
+ "57": "carrot",
84
+ "58": "hot dog",
85
+ "59": "pizza",
86
+ "6": "bus",
87
+ "60": "donut",
88
+ "61": "cake",
89
+ "62": "chair",
90
+ "63": "couch",
91
+ "64": "potted plant",
92
+ "65": "bed",
93
+ "66": "mirror",
94
+ "67": "dining table",
95
+ "68": "window",
96
+ "69": "desk",
97
+ "7": "train",
98
+ "70": "toilet",
99
+ "71": "door",
100
+ "72": "tv",
101
+ "73": "laptop",
102
+ "74": "mouse",
103
+ "75": "remote",
104
+ "76": "keyboard",
105
+ "77": "cell phone",
106
+ "78": "microwave",
107
+ "79": "oven",
108
+ "8": "truck",
109
+ "80": "toaster",
110
+ "81": "sink",
111
+ "82": "refrigerator",
112
+ "83": "blender",
113
+ "84": "book",
114
+ "85": "clock",
115
+ "86": "vase",
116
+ "87": "scissors",
117
+ "88": "teddy bear",
118
+ "89": "hair drier",
119
+ "9": "boat",
120
+ "90": "toothbrush"
121
+ },
122
+ "init_std": 0.02,
123
+ "init_xavier_std": 1.0,
124
+ "is_encoder_decoder": true,
125
+ "label2id": {
126
+ "N/A": 0,
127
+ "airplane": 5,
128
+ "apple": 53,
129
+ "backpack": 27,
130
+ "banana": 52,
131
+ "baseball bat": 39,
132
+ "baseball glove": 40,
133
+ "bear": 23,
134
+ "bed": 65,
135
+ "bench": 15,
136
+ "bicycle": 2,
137
+ "bird": 16,
138
+ "blender": 83,
139
+ "boat": 9,
140
+ "book": 84,
141
+ "bottle": 44,
142
+ "bowl": 51,
143
+ "broccoli": 56,
144
+ "bus": 6,
145
+ "cake": 61,
146
+ "car": 3,
147
+ "carrot": 57,
148
+ "cat": 17,
149
+ "cell phone": 77,
150
+ "chair": 62,
151
+ "clock": 85,
152
+ "couch": 63,
153
+ "cow": 21,
154
+ "cup": 47,
155
+ "desk": 69,
156
+ "dining table": 67,
157
+ "dog": 18,
158
+ "donut": 60,
159
+ "door": 71,
160
+ "elephant": 22,
161
+ "eye glasses": 30,
162
+ "fire hydrant": 11,
163
+ "fork": 48,
164
+ "frisbee": 34,
165
+ "giraffe": 25,
166
+ "hair drier": 89,
167
+ "handbag": 31,
168
+ "hat": 26,
169
+ "horse": 19,
170
+ "hot dog": 58,
171
+ "keyboard": 76,
172
+ "kite": 38,
173
+ "knife": 49,
174
+ "laptop": 73,
175
+ "microwave": 78,
176
+ "mirror": 66,
177
+ "motorcycle": 4,
178
+ "mouse": 74,
179
+ "orange": 55,
180
+ "oven": 79,
181
+ "parking meter": 14,
182
+ "person": 1,
183
+ "pizza": 59,
184
+ "plate": 45,
185
+ "potted plant": 64,
186
+ "refrigerator": 82,
187
+ "remote": 75,
188
+ "sandwich": 54,
189
+ "scissors": 87,
190
+ "sheep": 20,
191
+ "shoe": 29,
192
+ "sink": 81,
193
+ "skateboard": 41,
194
+ "skis": 35,
195
+ "snowboard": 36,
196
+ "spoon": 50,
197
+ "sports ball": 37,
198
+ "stop sign": 13,
199
+ "street sign": 12,
200
+ "suitcase": 33,
201
+ "surfboard": 42,
202
+ "teddy bear": 88,
203
+ "tennis racket": 43,
204
+ "tie": 32,
205
+ "toaster": 80,
206
+ "toilet": 70,
207
+ "toothbrush": 90,
208
+ "traffic light": 10,
209
+ "train": 7,
210
+ "truck": 8,
211
+ "tv": 72,
212
+ "umbrella": 28,
213
+ "vase": 86,
214
+ "window": 68,
215
+ "wine glass": 46,
216
+ "zebra": 24
217
+ },
218
+ "mask_loss_coefficient": 1,
219
+ "max_position_embeddings": 1024,
220
+ "model_type": "detr",
221
+ "num_hidden_layers": 6,
222
+ "num_queries": 100,
223
+ "position_embedding_type": "sine",
224
+ "scale_embedding": false,
225
+ "transformers_version": "4.7.0.dev0"
226
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:830f5e2eeaada8c8c8281779dcc8ab12833972eb8514ed0a35be6c1d4420ad81
3
+ size 166587896
preprocessor_config.json ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "do_normalize": true,
3
+ "do_resize": true,
4
+ "image_processor_type": "DetrImageProcessor",
5
+ "format": "coco_detection",
6
+ "image_mean": [
7
+ 0.485,
8
+ 0.456,
9
+ 0.406
10
+ ],
11
+ "image_std": [
12
+ 0.229,
13
+ 0.224,
14
+ 0.225
15
+ ],
16
+ "size": {"shortest_edge": 800, "longest_edge": 1333}
17
+ }
pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9400d5a6a433c73bb3440f42daab69a7b728b4bce0922904ac4779cb04e08989
3
+ size 166731871