티스토리 뷰

[업데이트 2018.08.29 10:33] 


열일곱번째 요약할 논문은 "Perceptual Generative Adversarial Networks for Small Object Detection" (https://arxiv.org/pdf/1706.05274v2.pdf) 입니다. 본 논문은 해상도가 낮고, 노이즈가 심한 사물의 경우 detection이 어려운데, 논문에서 제안한 Perceptual GAN을 통해 small object에 대해 "super-resolved" 과정을 거쳐 최종적으로 이미지 인식률을 높이는 방법을 제안하고 있습니다. (Figure 1)



기존의 Fast R-CNN, Faster R-CNN과 같은 object detection deep learning pipeline의 경우 고해상도, 모습이나 구조가 명확한 크기가 큰 사물의 경우 좋은 성능을 보였습니다. 그러나 저해상도, 모습이나 구조가 불명확한 크기가 작은 사물에 대해서는 성능이 좋지 않았습니다. 기존 논문들[4, 25, 18, 39, 23, 1]의 경우 small object detection 문제를 해결하려는 시도를 하였습니다.


[425]의 경우는 입력 이미지의 크기를 키웠습니다.

[39231]의 경우는 lower-level features layers의 multi-scale representation을 통해 high-level small-scale feature에 대해 향상을 시도 하였습니다.


기존 방법의 경우 data augmentation과 단순히 feature dimension 증가를 통한 개선을 시도하였기 때문에 단점이 존재합니다. 입력 이미지를 scale한 경우 학습과 테스트시 conputation cost가 높아지게 됩니다. 또한 low-level feature에 의해 생성된 multi-scale 표현의 경우 black-box처럼 동작을 하고, 이렇게 생성된 feature의 경우 object detection을 위해 이해 가능하고, 식별이 충분히 될지 보장할 수 없습니다. 


이러한 문제들을 해결하기 위해 본 논문에서는 Perceptual GAN을 제안합니다. Perceptual GAN은 작은 사물을 큰 사물과 비슷하게 만드는 것을 목표로 합니다. 서로 크기가 다른 사물간에 구조적 연관성에 대해 학습을 수행합니다. Vanilla GAN처럼 네트워크는 크게 generator network와 discriminator network 두가지로 나뉩니다. 가장 큰 차이점이라면 Residual Learning이 적용 되었다는 점입니다. (http://arclab.tistory.com/163?category=679057 참고) 


<Vanilla GAN>


D : Discriminator

G : Generator

Pdata(x) : distribution of input data(large object)

Pz(z) : distribution of input data(small object)


find D maximize L = D(x) -> 1, D(G(z)) -> 0

find G minimize L = D(G(z)) -> 1


<Perceptual GAN>


Fl : representation of large object

Fs : representation of small object

f : low-level feature of small object


위와 같이 residual learning 텀이 추가되었습니다.  그리고 각각의 텀에 대한 설명은 위와 같습니다. 아래의 Feature 2와 같이 residual learning이 추가 되면서 기존 small object에 대한 표현인 Fs와 Generator로 부터 생성한 결과를 element wise sum을 수행하도록 제안하고 있습니다.



결국 아래와 같이 각각의 파라메터를 업데이트하게 되며, loss function을 minimize합니다.




Discriminator Network의 경우 Adversarial Loss(기존 GAN에 대한 loss)와 Perceptual Loss(기존 R-CNN에 대한 loss)로 구성됩니다.



아래의 Figure 3은 Generator와 Discriminator Network에 대한 상세 구조도입니다. 학습은 기본적으로 기존의 R-CNN처럼 large object의 object detection 대한 학습을 진행하고, GAN을 통해 small object를 super-resolved feature로 생성하도록 학습을 수행합니다. 최종적으로 small object를 변환시킨 super-resolved feature와 large object feature가 거의 비슷해질 때까지 학습을 수행합니다.



데이터셋의 경우 Traffic Sign Detection과 Pedestrian Detection Dataset을 아래와 같이 사용하였습니다.


- Traffic Sign Detection Dataset : Tsinghua-Tencent 100K

- Pedestrian Detection Dataset : Caltech Pedestrian


아래의 결과에서 알수 있듯이 기존 방법대시 small object에서 성능 향상이 있음을 알 수 있습니다.



실제 검출된 결과를 기존 방법들과 비교한 사진으로 small object에 대해 성능이 향상 되었음을 확인할 수 있습니다.



또한 Table 5에서 알수 있듯이 low-level layer를 residual learning을 통해 skip connection 하였을 때, 가장 성능이 좋음을 보여주고 있습니다.



[1] https://arxiv.org/pdf/1706.05274v2.pdf

[2] https://notejpp.blogspot.com/2017/06/perceptual-generative-adversarial.html


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함