Partilhar via


ROIPooling

    ROIPooling (input,
                ROIs,
                {ROI output shape}, 
                spatialScale = {spatial scale wrt image (float)})

A operação roi-pooling calcula uma nova matriz selecionando o valor máximo (máximo de agrupamento) na entrada de agrupamento para cada região de interesse (ROI). As regiões de interesse são dadas como a segunda entrada para o operador como os cantos superior esquerdo e inferior direito das regiões em pixels absolutos da imagem original. A entrada de agrupamento é calculada por ROI projetando as coordenadas no mapa de funções de entrada (primeira entrada para o operador) e considerando todas as posições sobrepostas. A projeção utiliza a "escala espacial" que é a relação de tamanho do mapa de características de entrada sobre o tamanho da imagem de entrada. A escala espacial pode ser calculada multiplicando todos os passos que ocorrem antes do roi-pooling e tomando o inverso, por exemplo, uma rede que tem quatro camadas de pool com passo dois teria uma escala espacial de 1/16. A largura e a altura da forma de saída são determinadas pelo terceiro argumento, a profundidade de saída (número de filtros) é a mesma que a profundidade de entrada.

  • input - entrada de agrupamento para toda a imagem
  • ROIs - Coordenadas ROI como coordenadas absolutas de pixels (x_min, y_min, x_max, y_max)
  • {roi output shape}- dimensões (largura, altura) da saída ROI, como vetor BrainScript, por exemplo. (4:4)
  • spatialScale - a escala de ópera do tamanho original da imagem. O padrão é 1/16, que corresponde, por exemplo, às redes AlexNet e VGG16.

Nota

Alterada na versão 2.1 CNTK.

Em CNTK 2.1 foi adicionado o parâmetro da escala espacial e as coordenadas dos ROIs passam agora como valores absolutos de pixel em vez de valores relativos como nas versões anteriores.