Что означают аргументы generate_anchor_base ()? - PullRequest
0 голосов
/ 18 ноября 2018

Github page

Поиск generate_anchor_base метода, который является более быстрым утилитой R-CNN в ChainerCV.

Что такое base_size = 16?Я видел в документации, что это

Ширина и высота контрольного окна.

Но что означает «окно ссылки»?

Также говорится, что anchor_scales=[8, 16, 32] - это области якорей, но я подумал, что эти области (128, 256, 512)

Другой вопрос:
Если base size равно 16 и h = 128 и w=128. Означает ли это, что anchor_base[index, 0] = py - h / 2 является отрицательным значением?поскольку py = 8 и h / 2 = 128/2

1 Ответ

0 голосов
/ 18 ноября 2018

Этот метод является утилитарной функцией Faster R-CNN, поэтому я предполагаю, что вы поняли, что такое «якорь», предложенный в Faster R-CNN.

  • »Faster R-CNN: на пути к реальному-Временное обнаружение объекта с сетями предложений региона "https://arxiv.org/abs/1506.01497

base_size и anchor_scales определяет размер якоря.Например, когда base_size=16 и anchor_scales=[8, 16, 32]ratio=1.0), высота и ширина якоря будут 16 * [8, 16, 32] = (128, 256, 512), как вы и ожидали.ratio определяет соотношение сторон по высоте и ширине.

(Я могу ошибаться в следующем абзаце, пожалуйста, исправьте, если я ошибаюсь.)

Я думаю, что base_size необходимо установитькак размер текущего скрытого слоя.В реализации chainercv Faster R-CNN функция extractor подается в rpn (сеть региональных предложений), а generate_anchor_base используется в rpn.Поэтому вам нужно позаботиться о том, что является особенностью вывода extractor.chainercv использует VGG16 в качестве экстрактора объектов, а слой conv5_3 используется в качестве извлеченного объекта (см. здесь ), этот слой является местом, где max_pooling_2d применяется 4 раза, в результате 2 ^ 4= 16-кратная малая особенность.

По другому вопросу, я думаю, ваше понимание верно, py - h / 2 будет отрицательным значением.Но это anchor_base значение является лишь относительным значением.Как только anchor_base подготовлено при инициализации модели ( здесь ), фактическое (абсолютное значение) anchor создается в каждом прямом вызове ( здесь ) в методе _enumerate_shifted_anchor.

...