merve HF Staff commited on
Commit
4b871e5
·
0 Parent(s):

Initial commit

Browse files
Files changed (5) hide show
  1. .gitattributes +35 -0
  2. README.md +88 -0
  3. config.json +286 -0
  4. model.safetensors +3 -0
  5. preprocessor_config.json +26 -0
.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
README.md ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ tags:
4
+ - image-segmentation
5
+ - instance-segmentation
6
+ - vision
7
+ datasets:
8
+ - coco
9
+ pipeline_tag: image-segmentation
10
+ library_name: transformers
11
+ ---
12
+
13
+ # RF-DETR (Segmentation)
14
+
15
+ RF-DETR is a real-time detection transformer family introduced in [RF-DETR: Neural Architecture Search for Real-Time Detection Transformers](https://huggingface.co/papers/2511.09554) by Robinson et al. and integrated in 🤗 Transformers via [PR #36895](https://github.com/huggingface/transformers/pull/36895).
16
+
17
+ ## Model description
18
+
19
+ RF-DETR is an end-to-end instance segmentation model that combines ideas from LW-DETR and Deformable DETR: a DINOv2-with-registers style ViT backbone (with an RF-DETR windowing pattern for efficient attention), a multi-scale projector between encoder and decoder, and a multi-scale deformable DETR decoder extended with an instance-segmentation head.
20
+
21
+ Key Architectural Details:
22
+ - **Backbone:** DINOv2-with-registers style ViT with RF-DETR **windowed / full** attention alternation.
23
+ - **Multi-scale fusion:** **RF-DETR multi-scale projector** (C2f-style blocks in the LW-DETR lineage) to aggregate multi-level backbone features before the decoder.
24
+ - **Decoder:** **Deformable DETR**-style decoder with multi-scale deformable cross-attention; segmentation checkpoints add mask prediction on top of box/class outputs.
25
+ - **Queries:** DETR-style object queries with bipartite matching and auxiliary decoder losses.
26
+
27
+ Training Details:
28
+ - **Segmentation losses:** mask prediction losses (e.g. focal / dice style terms as configured) in addition to box and classification objectives, with auxiliary decoder supervision.
29
+ - **Group DETR:** parallel decoder copies during training for faster convergence.
30
+ - **NAS (family-level):** weight-sharing search over accuracy–latency knobs as in the RF-DETR paper, specialized to the target dataset distribution.
31
+
32
+ ### How to use
33
+
34
+ You can use the raw model for instance segmentation; it predicts **per-instance masks** together with **bounding boxes and class scores**. See the [model hub](https://huggingface.co/models?search=stevenbucaille/rf-detr) to look for all available RF-DETR models.
35
+
36
+ Here is how to use this model:
37
+
38
+ ```python
39
+ from transformers import AutoImageProcessor, RfDetrForInstanceSegmentation
40
+ import torch
41
+ from PIL import Image
42
+ import requests
43
+
44
+ url = "http://images.cocodataset.org/val2017/000000039769.jpg"
45
+ image = Image.open(requests.get(url, stream=True).raw)
46
+
47
+ processor = AutoImageProcessor.from_pretrained("stevenbucaille/rf-detr-segmentation")
48
+ model = RfDetrForInstanceSegmentation.from_pretrained("stevenbucaille/rf-detr-segmentation")
49
+
50
+ inputs = processor(images=image, return_tensors="pt")
51
+ outputs = model(**inputs)
52
+
53
+ target_sizes = [image.size[::-1]]
54
+ results = processor.post_process_instance_segmentation(
55
+ outputs, target_sizes=target_sizes, threshold=0.5
56
+ )
57
+ for item in results:
58
+ for k, v in item.items():
59
+ if hasattr(v, "shape"):
60
+ print(k, tuple(v.shape))
61
+ else:
62
+ print(k, v)
63
+ ```
64
+ This should output:
65
+ ```
66
+ segmentation (480, 640)
67
+ segments_info []
68
+ ```
69
+
70
+ ## Training data
71
+
72
+ These checkpoints are trained on the standard [COCO 2017](https://cocodataset.org/#home) instance segmentation label space (80 thing categories) as reflected in `config.id2label`.
73
+
74
+ ### BibTeX entry and citation info
75
+
76
+ ```bibtex
77
+ @misc{robinson2026rfdetrneuralarchitecturesearch,
78
+ title={RF-DETR: Neural Architecture Search for Real-Time Detection Transformers},
79
+ author={Isaac Robinson and Peter Robicheaux and Matvei Popov and Deva Ramanan and Neehar Peri},
80
+ year={2026},
81
+ eprint={2511.09554},
82
+ archivePrefix={arXiv},
83
+ primaryClass={cs.CV},
84
+ url={https://huggingface.co/papers/2511.09554},
85
+ }
86
+ ```
87
+
88
+ This model was originally contributed by stevenbucaille in 🤗 transformers.
config.json ADDED
@@ -0,0 +1,286 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "activation_dropout": 0.0,
3
+ "activation_function": "silu",
4
+ "architectures": [
5
+ "RfDetrForInstanceSegmentation"
6
+ ],
7
+ "attention_bias": true,
8
+ "attention_dropout": 0.0,
9
+ "auxiliary_loss": true,
10
+ "backbone_config": {
11
+ "apply_layernorm": true,
12
+ "attention_probs_dropout_prob": 0.0,
13
+ "drop_path_rate": 0.0,
14
+ "dtype": "float32",
15
+ "hidden_act": "gelu",
16
+ "hidden_dropout_prob": 0.0,
17
+ "hidden_size": 384,
18
+ "image_size": 432,
19
+ "initializer_range": 0.02,
20
+ "layer_norm_eps": 1e-06,
21
+ "layerscale_value": 1.0,
22
+ "mlp_ratio": 4,
23
+ "model_type": "rf_detr_dinov2",
24
+ "num_attention_heads": 6,
25
+ "num_channels": 3,
26
+ "num_hidden_layers": 12,
27
+ "num_windows": 2,
28
+ "out_features": [
29
+ "stage3",
30
+ "stage6",
31
+ "stage9",
32
+ "stage12"
33
+ ],
34
+ "out_indices": [
35
+ 3,
36
+ 6,
37
+ 9,
38
+ 12
39
+ ],
40
+ "patch_size": 12,
41
+ "qkv_bias": true,
42
+ "reshape_hidden_states": true,
43
+ "stage_names": [
44
+ "stem",
45
+ "stage1",
46
+ "stage2",
47
+ "stage3",
48
+ "stage4",
49
+ "stage5",
50
+ "stage6",
51
+ "stage7",
52
+ "stage8",
53
+ "stage9",
54
+ "stage10",
55
+ "stage11",
56
+ "stage12"
57
+ ],
58
+ "use_mask_token": true,
59
+ "use_swiglu_ffn": false,
60
+ "window_block_indexes": [
61
+ 0,
62
+ 1,
63
+ 2,
64
+ 4,
65
+ 5,
66
+ 7,
67
+ 8,
68
+ 10,
69
+ 11
70
+ ]
71
+ },
72
+ "bbox_cost": 5,
73
+ "bbox_loss_coefficient": 5,
74
+ "c2f_num_blocks": 3,
75
+ "class_cost": 2,
76
+ "class_loss_coefficient": 5.0,
77
+ "d_model": 256,
78
+ "decoder_activation_function": "relu",
79
+ "decoder_cross_attention_heads": 16,
80
+ "decoder_ffn_dim": 2048,
81
+ "decoder_layers": 4,
82
+ "decoder_n_points": 2,
83
+ "decoder_self_attention_heads": 8,
84
+ "dice_loss_coefficient": 1,
85
+ "disable_custom_kernels": true,
86
+ "dropout": 0.1,
87
+ "dtype": "float32",
88
+ "eos_coefficient": 0.1,
89
+ "focal_alpha": 0.25,
90
+ "giou_cost": 2,
91
+ "giou_loss_coefficient": 2,
92
+ "group_detr": 13,
93
+ "hidden_expansion": 0.5,
94
+ "id2label": {
95
+ "0": "N/A",
96
+ "1": "person",
97
+ "2": "bicycle",
98
+ "3": "car",
99
+ "4": "motorcycle",
100
+ "5": "airplane",
101
+ "6": "bus",
102
+ "7": "train",
103
+ "8": "truck",
104
+ "9": "boat",
105
+ "10": "traffic light",
106
+ "11": "fire hydrant",
107
+ "12": "N/A",
108
+ "13": "stop sign",
109
+ "14": "parking meter",
110
+ "15": "bench",
111
+ "16": "bird",
112
+ "17": "cat",
113
+ "18": "dog",
114
+ "19": "horse",
115
+ "20": "sheep",
116
+ "21": "cow",
117
+ "22": "elephant",
118
+ "23": "bear",
119
+ "24": "zebra",
120
+ "25": "giraffe",
121
+ "26": "N/A",
122
+ "27": "backpack",
123
+ "28": "umbrella",
124
+ "29": "N/A",
125
+ "30": "N/A",
126
+ "31": "handbag",
127
+ "32": "tie",
128
+ "33": "suitcase",
129
+ "34": "frisbee",
130
+ "35": "skis",
131
+ "36": "snowboard",
132
+ "37": "sports ball",
133
+ "38": "kite",
134
+ "39": "baseball bat",
135
+ "40": "baseball glove",
136
+ "41": "skateboard",
137
+ "42": "surfboard",
138
+ "43": "tennis racket",
139
+ "44": "bottle",
140
+ "45": "N/A",
141
+ "46": "wine glass",
142
+ "47": "cup",
143
+ "48": "fork",
144
+ "49": "knife",
145
+ "50": "spoon",
146
+ "51": "bowl",
147
+ "52": "banana",
148
+ "53": "apple",
149
+ "54": "sandwich",
150
+ "55": "orange",
151
+ "56": "broccoli",
152
+ "57": "carrot",
153
+ "58": "hot dog",
154
+ "59": "pizza",
155
+ "60": "donut",
156
+ "61": "cake",
157
+ "62": "chair",
158
+ "63": "couch",
159
+ "64": "potted plant",
160
+ "65": "bed",
161
+ "66": "N/A",
162
+ "67": "dining table",
163
+ "68": "N/A",
164
+ "69": "N/A",
165
+ "70": "toilet",
166
+ "71": "N/A",
167
+ "72": "tv",
168
+ "73": "laptop",
169
+ "74": "mouse",
170
+ "75": "remote",
171
+ "76": "keyboard",
172
+ "77": "cell phone",
173
+ "78": "microwave",
174
+ "79": "oven",
175
+ "80": "toaster",
176
+ "81": "sink",
177
+ "82": "refrigerator",
178
+ "83": "N/A",
179
+ "84": "book",
180
+ "85": "clock",
181
+ "86": "vase",
182
+ "87": "scissors",
183
+ "88": "teddy bear",
184
+ "89": "hair drier",
185
+ "90": "toothbrush"
186
+ },
187
+ "init_std": 0.02,
188
+ "intermediate_size": 1024,
189
+ "label2id": {
190
+ "N/A": 83,
191
+ "airplane": 5,
192
+ "apple": 53,
193
+ "backpack": 27,
194
+ "banana": 52,
195
+ "baseball bat": 39,
196
+ "baseball glove": 40,
197
+ "bear": 23,
198
+ "bed": 65,
199
+ "bench": 15,
200
+ "bicycle": 2,
201
+ "bird": 16,
202
+ "boat": 9,
203
+ "book": 84,
204
+ "bottle": 44,
205
+ "bowl": 51,
206
+ "broccoli": 56,
207
+ "bus": 6,
208
+ "cake": 61,
209
+ "car": 3,
210
+ "carrot": 57,
211
+ "cat": 17,
212
+ "cell phone": 77,
213
+ "chair": 62,
214
+ "clock": 85,
215
+ "couch": 63,
216
+ "cow": 21,
217
+ "cup": 47,
218
+ "dining table": 67,
219
+ "dog": 18,
220
+ "donut": 60,
221
+ "elephant": 22,
222
+ "fire hydrant": 11,
223
+ "fork": 48,
224
+ "frisbee": 34,
225
+ "giraffe": 25,
226
+ "hair drier": 89,
227
+ "handbag": 31,
228
+ "horse": 19,
229
+ "hot dog": 58,
230
+ "keyboard": 76,
231
+ "kite": 38,
232
+ "knife": 49,
233
+ "laptop": 73,
234
+ "microwave": 78,
235
+ "motorcycle": 4,
236
+ "mouse": 74,
237
+ "orange": 55,
238
+ "oven": 79,
239
+ "parking meter": 14,
240
+ "person": 1,
241
+ "pizza": 59,
242
+ "potted plant": 64,
243
+ "refrigerator": 82,
244
+ "remote": 75,
245
+ "sandwich": 54,
246
+ "scissors": 87,
247
+ "sheep": 20,
248
+ "sink": 81,
249
+ "skateboard": 41,
250
+ "skis": 35,
251
+ "snowboard": 36,
252
+ "spoon": 50,
253
+ "sports ball": 37,
254
+ "stop sign": 13,
255
+ "suitcase": 33,
256
+ "surfboard": 42,
257
+ "teddy bear": 88,
258
+ "tennis racket": 43,
259
+ "tie": 32,
260
+ "toaster": 80,
261
+ "toilet": 70,
262
+ "toothbrush": 90,
263
+ "traffic light": 10,
264
+ "train": 7,
265
+ "truck": 8,
266
+ "tv": 72,
267
+ "umbrella": 28,
268
+ "vase": 86,
269
+ "wine glass": 46,
270
+ "zebra": 24
271
+ },
272
+ "layer_norm_eps": 1e-05,
273
+ "mask_class_loss_coefficient": 5.0,
274
+ "mask_dice_loss_coefficient": 5.0,
275
+ "mask_downsample_ratio": 4,
276
+ "mask_loss_coefficient": 1,
277
+ "mask_point_sample_ratio": 16,
278
+ "model_type": "rf_detr",
279
+ "num_feature_levels": 1,
280
+ "num_queries": 200,
281
+ "projector_scale_factors": [
282
+ 1.0
283
+ ],
284
+ "segmentation_head_activation_function": "gelu",
285
+ "transformers_version": "5.8.0.dev0"
286
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9f70cd41fa4329f7c983071db7efc569a17618ab1f35a042ed354845de986724
3
+ size 136680612
preprocessor_config.json ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "do_convert_annotations": true,
3
+ "do_normalize": true,
4
+ "do_pad": true,
5
+ "do_rescale": true,
6
+ "do_resize": true,
7
+ "format": "coco_detection",
8
+ "image_mean": [
9
+ 0.485,
10
+ 0.456,
11
+ 0.406
12
+ ],
13
+ "image_processor_type": "DetrImageProcessor",
14
+ "image_std": [
15
+ 0.229,
16
+ 0.224,
17
+ 0.225
18
+ ],
19
+ "resample": 2,
20
+ "rescale_factor": 0.00392156862745098,
21
+ "size": {
22
+ "height": 432,
23
+ "width": 432
24
+ },
25
+ "use_fast": true
26
+ }