ROIPooling
ROIPooling (input,
ROIs,
{ROI output shape},
spatialScale = {spatial scale wrt image (float)})
Åtgärden ROI-pooling beräknar en ny matris genom att välja det maximala värdet (max pooling) i pooling-indata för varje intresseregion (ROI). De intressanta regionerna anges som andra indata till operatorn som de övre vänstra och nedre högra hörnen i regionerna i absoluta bildpunkter i den ursprungliga bilden. Poolindata beräknas per ROI genom att koordinaterna projiceras på indatafunktionskartan (första indata till operatorn) och med hänsyn till alla överlappande positioner. Projektionen använder den "rumsliga skalan" som är storleksförhållandet för indatafunktionskartan över indatabildens storlek. Den rumsliga skalan kan beräknas genom att multiplicera alla steg som inträffar före ROI-poolningen och ta inversen, t.ex. ett nätverk som har fyra poollager med steg två skulle ha en rumslig skala på 1/16. Utdataformens bredd och höjd bestäms av det tredje argumentet, utdatadjupet (antalet filter) är samma som indatadjupet.
input
– pooling input för hela avbildningenROIs
– ROI-koordinater som absoluta pixelkoordinater(x_min, y_min, x_max, y_max)
{roi output shape}
- dimensioner (bredd, höjd) för ROI-utdata, som en BrainScript-vektor, t.ex.(4:4)
.spatialScale
– operandskalan från den ursprungliga bildstorleken. Standardvärdet är 1/16, vilket matchar till exempel AlexNet- och VGG16-nätverk.
Anteckning
Har ändrats i CNTK version 2.1.
I CNTK 2.1 lades parametern spatial skalning till och koordinaterna för ROIs skickas nu som absoluta pixelvärden i stället för relativa värden som i tidigare versioner.