Что означают аргументы generate_anchor_base()?

Страница Github

Ищу 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 ответ

Решение

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

  • "Ускоренная 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 Ускоренная реализация 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 метод.

Другие вопросы по тегам