728x90
반응형

def rpn(base_layers, num_anchors) :
	x = Concolution2D(512, (3, 3), padding='same', activation='relu', kernel_initializer='normal', name='rpn_conv1')(base_layers)
    
    x_class = Concolution2D(num_anchors, (1, 1), activation='sigmoid', kernel_initializer='uniform', name='rpn_out_class')(x)
    x_regr = Concolution2D(num_anchors*4, (1, 1), activation='linear', kernel_initializer='zero', name='rpn_out_regress')(x)
    
    return [x_class, x_regr, base_layers]

 

w50 x h40 x d512 => 3x3 conv, 512 channel =>

1) 이진분류 : 1x1 conv 9(anchor 개수) output channel => sigmoid Binary ( FG / BG ) 

                      => w50 x h40 9anchor box => grid x box = 18000개

2) 영역추천 : 1x1 conv 4x9 output channel => bounding box regression (x1, y1, w, h)

                        (x1, y1, w, h) 9anchor box => 36

 

# RPN Bounding Box Regression

- RPN Bounding Box Regression은 Anchor Box를 Reference로 이용하여 Ground truth와 예측 Bbox의 중심좌표 x, y 그리고 w, h 의 차이가 Anchor box와 Ground Truth 간의 중심 좌표 x,y,w,h 차이와 최대한 동일하게 예측 될 수 있어야 함.

Anchor Box와 Predicted box, Ground Truth의 차이

1) PB, GTB 중심점 간의 거리

2) AB, GTB 중심점 간의 거리

두 차이가 동일하면 같게 예측 한 것이라는 가정

 

 

 

 

 

 

 

 

 

반응형

+ Recent posts