欢迎访问宙启技术站
智能推送

object_detection.protos.model_pb2中的参数详解

发布时间:2023-12-24 17:32:14

object_detection.protos.model_pb2是一个定义了TensorFlow Object Detection API模型的protocol buffer文件。下面是一些在这个文件中定义的参数及其用法的详细说明:

1. RnnStateCompressionType:

- 描述:定义了RNN状态压缩类型

- 可选值:NONE、NEXT_FRAME

- 使用例子:

     model {
       rnn_state_compression_type: NEXT_FRAME
     }
     

2. FirstStageAnchorGenerator:

- 描述: 阶段的先验锚点生成器

- 字段:

- grid_anchor_generator:在网格上生成锚点的配置参数

- ssd_anchor_generator:采用SSD算法生成锚点的配置参数

- 使用例子:

- 在grid_anchor_generator上生成锚点:

       model {
         first_stage_anchor_generator {
           grid_anchor_generator {
             height_stride: 16
             width_stride: 16
             scales: 0.25
             scales: 0.5
             scales: 1.0
             aspect_ratios: 0.5
             aspect_ratios: 1.0
             aspect_ratios: 2.0
             reduce_boxes_in_lowest_layer: true
           }
         }
       }
       

- 在ssd_anchor_generator上生成锚点:

       model {
         first_stage_anchor_generator {
           ssd_anchor_generator {
             num_layers: 6
             min_scale: 0.2
             max_scale: 0.95
             aspect_ratios: [1.0, 2.0, 0.5, 3.0, 0.3333]
             reduce_boxes_in_lowest_layer: true
           }
         }
       }
       

3. SecondStagePostprocessor:

- 描述:第二阶段的后处理器

- 字段:

- batch_non_max_suppression:批量非最大抑制的配置参数

- score_converter:得分转换器的配置参数

- 使用例子:

- 配置批量非最大抑制:

       model {
         second_stage_postprocessor {
           batch_non_max_suppression {
             score_threshold: 0.01
             iou_threshold: 0.6
             max_detections_per_class: 100
             max_total_detections: 300
           }
         }
       }
       

- 配置得分转换器:

       model {
         second_stage_postprocessor {
           score_converter: "SIGMOID"
         }
       }
       

4. Ssd:

- 描述:SSD模型的配置参数

- 字段:

- num_classes:类别数量

- feature_extractor:特征提取器的配置参数

- box_coder:框编码器的配置参数

- matcher:匹配器的配置参数

- similarity_calculator:相似度计算器的配置参数

- box_predictor:框预测器的配置参数

- 使用例子:

     model {
       ssd {
         num_classes: 90
         feature_extractor {
           type: "ssd_resnet50_v1_fpn"
           depth_multiplier: 1.0
           min_depth: 16
           conv_hyperparams {
             regularizer {
               l2_regularizer {
                 weight: 0.0005
               }
             }
             initializer {
               random_normal_initializer {
                 stddev: 0.01
                 mean: 0.0
               }
             }
             activation: RELU_6
           }
           override_base_feature_extractor_hyperparams: true
           fpn {
             min_level: 3
             max_level: 7
             additional_layer_depth: 256
           }
           fpn_post_processing {
             batch_norm_tf_eval: true
           }
         }
         box_coder {
           faster_rcnn_box_coder {
             y_scale: 10.0
             x_scale: 10.0
             height_scale: 5.0
             width_scale: 5.0
           }
         }
         matcher {
           argmax_matcher {
             matched_threshold: 0.5
             unmatched_threshold: 0.5
             ignore_thresholds: false
             negatives_lower_than_unmatched: true
             force_match_for_each_row: ""
           }
         }
         similarity_calculator {
           iou_similarity {
           }
         }
         box_predictor {
           weight_shared_convolutional_box_predictor {
             depth: 256
             class_prediction_bias_init: -4.6
             num_layers_before_predictor: 4
             kernel_size: 3
             class_prediction_kernel_size: 3
           }
         }
       }
     }
     

以上是object_detection.protos.model_pb2中的一些参数及其使用例子的详细说明。使用这些参数可以对TensorFlow Object Detection API模型进行配置和定制化。