Bobholamovic vor 2 Jahren
Ursprung
Commit
99ad617880

+ 1 - 0
README_CN.md

@@ -110,6 +110,7 @@ PaddleRS具有以下五大特色:
         <details><summary><b>目标检测</b></summary>
         <ul>
           <li><a href="./tutorials/train/object_detection/faster_rcnn.py">Faster R-CNN</a></li>
+          <li><a href="./tutorials/train/object_detection/fcosr.py">FCOSR</a></li>
           <li><a href="./tutorials/train/object_detection/ppyolo.py">PP-YOLO</a></li>
           <li><a href="./tutorials/train/object_detection/ppyolo_tiny.py">PP-YOLO Tiny</a></li>
           <li><a href="./tutorials/train/object_detection/ppyolov2.py">PP-YOLOv2</a></li>

+ 1 - 0
README_EN.md

@@ -108,6 +108,7 @@ PaddleRS is an end-to-end high-efficent development toolkit for remote sensing a
         <details><summary><b>Object Detection</b></summary>
         <ul>
           <li><a href="./tutorials/train/object_detection/faster_rcnn.py">Faster R-CNN</a></li>
+          <li><a href="./tutorials/train/object_detection/fcosr.py">FCOSR</a></li>
           <li><a href="./tutorials/train/object_detection/ppyolo.py">PP-YOLO</a></li>
           <li><a href="./tutorials/train/object_detection/ppyolo_tiny.py">PP-YOLO Tiny</a></li>
           <li><a href="./tutorials/train/object_detection/ppyolov2.py">PP-YOLOv2</a></li>

+ 18 - 1
docs/intro/model_cons_params_cn.md

@@ -369,6 +369,24 @@
 | `test_post_nms_top_n (int)`   | 测试时,进行 NMS 操作之后保留的预测框数量                           | `1000` |
 
 
+## `FCOSR`
+
+基于PaddlePaddle的FCOSR实现。
+
+| 参数名 | 描述                            | 默认值 |
+| --- |-------------------------------| --- |
+| `num_classes (int)` | 目标类别数量                        | `80` |
+| `backbone (str)` | 骨干网络名称                | `'MobileNetV1'` |
+| `anchors (list[list[int]])` | 预定义锚框的大小                       | `[[10, 13], [16, 30], [33, 23], [30, 61], [62, 45], [59, 119], [116, 90], [156, 198], [373, 326]]` |
+| `anchor_masks (list[list[int]])` | 预定义锚框的掩码                  | `[[6, 7, 8], [3, 4, 5], [0, 1, 2]]` |
+| `ignore_threshold (float)` | IoU 阈值,用于将预测框分配给真实框   | `0.7` |
+| `nms_score_threshold (float)` | NMS 的分数阈值      | `0.01` |
+| `nms_topk (int)` | 在执行 NMS 之前保留的最大预测框数  | `1000` |
+| `nms_keep_topk (int)` | 在执行 NMS 之后保留的最大预测框数            | `100` |
+| `nms_iou_threshold (float)` | NMS IoU 阈值    | `0.45` |
+| `label_smooth (bool)` | 是否使用标签平滑                 | `False` |
+
+
 ## `PPYOLO`
 
 基于PaddlePaddle的PP-YOLO实现。
@@ -449,7 +467,6 @@
 
 | 参数名 | 描述                            | 默认值 |
 | --- |-------------------------------| --- |
-| `rotate (bool)` | 表示是否执行旋转目标检测 | `False` |
 | `num_classes (int)` | 目标类别数量                        | `80` |
 | `backbone (str)` | 骨干网络名称                | `'MobileNetV1'` |
 | `anchors (list[list[int]])` | 预定义锚框的大小                       | `[[10, 13], [16, 30], [33, 23], [30, 61], [62, 45], [59, 119], [116, 90], [156, 198], [373, 326]]` |

+ 18 - 1
docs/intro/model_cons_params_en.md

@@ -364,6 +364,24 @@ The Faster R-CNN implementation based on PaddlePaddle.
 | `test_post_nms_top_n (int)`   | Number of predicted boxes to keep after NMS operation at test time                                         | `1000` |
 
 
+## `FCOSR`
+
+The FCOSR implementation based on PaddlePaddle.
+
+| Parameter Name | Description                                                                                                                 | Default Value |
+| --- |-----------------------------------------------------------------------------------------------------------------------------| --- |
+| `num_classes (int)` | Number of target classes                                                                                                    | `80` |
+| `backbone (str)` | Backbone network to use                                                                                      | `'MobileNetV1'` |
+| `anchors (list[list[int]])` | Sizes of predefined anchor boxes                                                                                                   | `[[10, 13], [16, 30], [33, 23], [30, 61], [62, 45 ], [59, 119], [116, 90], [156, 198], [373, 326]]` |
+| `anchor_masks (list[list[int]])` | Masks of predefined anchor boxes                                                                         | `[[6, 7, 8], [3, 4, 5], [0, 1, 2]]` |
+| `ignore_threshold (float)` | IoU threshold used to assign predicted boxes to ground truth boxes | `0.7` |
+| `nms_score_threshold (float)` | NMS score threshold                                             | `0.01` |
+| `nms_topk (int)` | Maximum number of detections to keep before performing NMS             | `1000` |
+| `nms_keep_topk (int)` | Maximum number of prediction boxes to keep after NMS                                            | `100` |
+| `nms_iou_threshold (float)` | NMS IoU threshold                         | `0.45` |
+| `label_smooth (bool)` | Whether to use label smoothing when computing losses  
+
+
 ## `PPYOLO`
 
 The PP-YOLO implementation based on PaddlePaddle.
@@ -443,7 +461,6 @@ The YOLOv3 implementation based on PaddlePaddle.
 
 | Parameter Name | Description                                                                                                                 | Default Value |
 | --- |-----------------------------------------------------------------------------------------------------------------------------| --- |
-| `rotate (bool)` | If True, the model performs rotated object detection | `False` |
 | `num_classes (int)` | Number of target classes                                                                                                    | `80` |
 | `backbone (str)` | Backbone network to use                                                                                      | `'MobileNetV1'` |
 | `anchors (list[list[int]])` | Sizes of predefined anchor boxes                                                                                                   | `[[10, 13], [16, 30], [33, 23], [30, 61], [62, 45 ], [59, 119], [116, 90], [156, 198], [373, 326]]` |

+ 1 - 0
tutorials/train/README_CN.md

@@ -26,6 +26,7 @@
 |image_restoration/esrgan.py | 图像复原 | ESRGAN |
 |image_restoration/lesrcnn.py | 图像复原 | LESRCNN |
 |object_detection/faster_rcnn.py | 目标检测 | Faster R-CNN |
+|object_detection/fcosr.py | 目标检测 | FCOSR |
 |object_detection/ppyolo.py | 目标检测 | PP-YOLO |
 |object_detection/ppyolo_tiny.py | 目标检测 | PP-YOLO Tiny |
 |object_detection/ppyolov2.py | 目标检测 | PP-YOLOv2 |

+ 1 - 0
tutorials/train/README_EN.md

@@ -26,6 +26,7 @@ Sample code using the PaddleRS training model is curated in this directory. The
 |image_restoration/esrgan.py | Image Restoration | ESRGAN |
 |image_restoration/lesrcnn.py | Image Restoration | LESRCNN |
 |object_detection/faster_rcnn.py | Object Detection | Faster R-CNN |
+|object_detection/fcosr.py | Object Detection | FCOSR |
 |object_detection/ppyolo.py | Object Detection | PP-YOLO |
 |object_detection/ppyolo_tiny.py | Object Detection | PP-YOLO Tiny |
 |object_detection/ppyolov2.py | Object Detection | PP-YOLOv2 |

+ 1 - 2
tutorials/train/object_detection/fcosr.py

@@ -101,8 +101,7 @@ model = pdrs.tasks.det.FCOSR(
     nms_topk=2000,
     nms_keep_topk=-1,
     nms_normalized=False,
-    nms_iou_threshold=0.1,
-    rotate=True)
+    nms_iou_threshold=0.1)
 
 # 执行模型训练
 model.train(