tensorflow / tensorflow/models

SSD anchors in Tensorflow detection API

Open
#7,536 5 comments 0 reactions 3 assignees View on GitHub

@pkulzc is already working on this.

Since Jun 22, 2020.

models:research:odapi type:support
Dominant language
Python
Stars
77.7k
Forks
44.8k
PR merge metrics
No merged PRs in 30d

Description

System information

  • What is the top-level directory of the model you are using:
    models/research/object_detection/ssd_mobilenet_v2_coco
  • Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No
  • OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 16.04
  • Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: Non
  • TensorFlow installed from (source or binary): binary
  • TensorFlow version (use command below): 1.12
  • Python version: python2.7
  • CUDA/cuDNN version: CUDA 10.0/ cuDNN 7.4.1
  • GPU model and memory: 1080Ti, 12GB

Describe the problem
Default SSD_mobilenet_V2_config is below.

anchor_generator {
  ssd_anchor_generator {
    num_layers: 6
    min_scale: 0.2
    max_scale: 0.9
    aspect_ratios: 1.0
    aspect_ratios: 2.0
    aspect_ratios: 0.5
    aspect_ratios: 3.0
    aspect_ratios: 0.33
    }
}
image_resizer {
      fixed_shape_resizer {
        height: 300
        width: 300
      }
}

If I set image_resizer {width:600, height:450} (4:3 input size), would base_anchor_size be set square or rectangle? link

image_resizer {
      fixed_shape_resizer {
        height: 450
        width: 600
      }
}

I trace the ssd_anchor_create func code, it seems to set rectangle-like base_anchor_size, right?

    min_im_shape = tf.minimum(im_height, im_width)
    scale_height = min_im_shape / im_height
    scale_width = min_im_shape / im_width
    base_anchor_size = [
        scale_height * self._base_anchor_size[0],
        scale_width * self._base_anchor_size[1]
    ]

I want to ask how could I set specific size of anchor box for each layer?
How to check details of anchor bboxes after training model?
Thanks a lot

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.