인프런 커뮤니티 질문&답변

jack님의 프로필 이미지
jack

작성한 질문수

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

Faster RCNN의 이해 02 - Anchor Box를 활용한 RPN 구성

anchor box의 매핑

작성

·

173

0

제가 우선 이해한 부분은

원본이미지 -> vgg -> 피처맵 

이렇게 피처맵을 뽑은 뒤 이전 강의에서 9개의 앵커 박스를 각 픽셀마다 매핑 한다고 이해했습니다.

1. 이번 강의에서 2분대의 이미지를 보면 40X50X512의 피처맵이 나오는데 이건 VGG를 통과한 피처맵이라고 생각하면 될까요?

2. 1.답이 맞다면 VGG를 통과한 후 9개의 앵커박스를 매핑 시키는 부분이 어느 부분인지 잘 이해가 안되는데 다른 질문에서 보기로는 3X3x512 컨볼루션을 할때 9개(앵커박스수)의 3x3x512 커널을 사용하여 컨볼루션을 한다고 이해했습니다.

하지만 40x50x512 피처맵에 3x3x512 9개 커널을 통과 시키면 40x50x512가 아니라 40x50x9가 나와야 되는게 아닌가요?

 

3. 기초적인 질문인데 피처맵에 3x3 conv를 하고 나서 1x1 convolution을 할때 1x1커널의 채널 수는 512이고, 9개의 커널을 사용해서 9 output channel 을 뽑는건가요?

답변 1

1

권 철민님의 프로필 이미지
권 철민
지식공유자

1. 이번 강의에서 2분대의 이미지를 보면 40X50X512의 피처맵이 나오는데 이건 VGG를 통과한 피처맵이라고 생각하면 될까요?

=> 네, 맞습니다. 

2. 1.답이 맞다면 VGG를 통과한 후 9개의 앵커박스를 매핑 시키는 부분이 어느 부분인지 잘 이해가 안되는데 다른 질문에서 보기로는 3X3x512 컨볼루션을 할때 9개(앵커박스수)의 3x3x512 커널을 사용하여 컨볼루션을 한다고 이해했습니다.

=> 강의 영상의 4분~5분 사이에 9개의 앵커박스를 매핑하는 부분에 대해서 말씀 드립니다.  영상의 코드를 보시면 2개의 1x1 Conv 매핑을 하는 부분입니다. 즉 anchor별 오브젝트 인가/아닌가를 위한 1X1 Conv를 9개의(anchor box 수만큼)의 filter를 가진 conv 연산을 하는 부분과 anchor별 bounding box를 찾기 위해 1x1 conv를 4x9(좌표개수 x anchor box 수만큼 하는 것입니다)

강의 영상의 소스코드를 보시면 40x50x512 feature map이 3x3 conv 512 channel 하면 40x50x512 가 됩니다. 이 feature map으로 anchor box mapping을 1x1 conv 하면서 적용하는 것입니다. 

즉 40x50x512를 1x1 Conv 9 filter적용하여 anchor별 오브젝트인가/아닌가 출력은 40x50x9가 나옵니다. 여기서 9는 anchor box입니다. 마찬가지로 40x50x512에 1x1 conv 36filter(4x9)를 적용해서 anchor별 bounding box 를 학습합니다. 

3. 기초적인 질문인데 피처맵에 3x3 conv를 하고 나서 1x1 convolution을 할때 1x1커널의 채널 수는 512이고, 9개의 커널을 사용해서 9 output channel 을 뽑는건가요?

=> 네 맞습니다. 

 

 

jack님의 프로필 이미지
jack
질문자

답변 감사합니다! 잘 이해했습니다.

jack님의 프로필 이미지
jack

작성한 질문수

질문하기