[Coursera] Convolutional Neural Networks 강의 (23강~31강)

tobigs1415 이미지 세미나·2021년 4월 14일
3

Tobigs1415 Image Semina

목록 보기
2/16
post-thumbnail

투빅스 14기 장혜림

1. Object Localization

  • 이미지 안의 object가 어느 위치에 있는지 위치 정보를 출력해주는 것으로, 주로 bounding box로 처리해줌

  • 하나의 object에 대해서만 수행 가능

  • 기존 class 분류를 위한 ouput에 bounding box를 위한 output (bx, by, bh, bw) 추가

  • loss function으로 보통 sum of squared error 사용

2. Landmark Detection

  • 이미지에서 주로 특징점이라고 불리는 주요한 지점을 의미
  • 여러 개의 output unit을 추가해서 인식하고자 하는 특징점들의 각 좌표를 출력함
  • 이 때, 특징점은 다른 이미지에 대해서도 항상 동일해야 함

3. Object Detection

1) Sliding Window Detection

  • window 크기만큼 이미지를 잘라 학습한 ConvNet의 input으로 사용

  • 이미지의 끝에 도달할 때까지 sliding 반복

  • 더 큰 사이즈의 window로 sliding 반복

  • 단점: Computation cost가 큼

  • 이를 해결하기 위해 Turning FC layer into convolutional layers 적용

  • FC layer를 Convolution layer로 변환함으로써, output을 vector형태에서 volume 형태로 사용

  • 한 번의 연산으로 sliding window한 결과값을 얻을 수 있음

  • 여전히 존재하는 문제: Bounding box의 위치가 정확하지 않을 수 있음

2) YOLO algorithm

  • Bounding box의 좌표를 output으로 하기 때문에 각 object에 대한 정확한 경계를 찾을 수 있음

2-1) Intersection over union

  • bounding box prediction 평가

2-2) Non-max suppression

  • 알고리즘이 같은 물체를 여러 번 감지하는 것이 아니라, 각 물체를 한 번씩만 감지하게 함

2-3) Anchor boxes

  • 하나의 grid cell에 여러 개의 object가 나타날 경우, 이를 감지하기 위해서 Anchor box 사용
  • y vector output 늘어남

3) Region Proposals

  • Sliding window처럼 이미지의 모든 부분을 classification하는 것이 아니라, 몇 개의 지역만을 골라서 classification 수행하는 방식

3-1) R-CNN

  • 물체가 있을 만한 영역(box)을 2000개 정도 제안(Selective Search)하고, 제안된 영역을 resize한 후 CNN모델을 통과시켜 object 분류
  • 연산 속도가 매우 느리다는 단점

3-2) Fast R-CNN

  • 각각의 Proposal에 대해 CNN 모델 통과시키는 것이 아니라, 전체 이미지에 대해 한번에 CNN 모델 통과시킨 후 출력된 Feature map에서 객체 탐지

3-3) Faster R-CNN

  • Region Proposal을 위해서 사용했던 Selective Search 기법 대신에 RPN(Region Proposal Network) 사용

4. Reference

Andrew Ng, Convolutional Neural Networks Course
Boostcourse, 딥러닝 4단계: 합성곱 신경망 네트워크(CNN) Course
https://www.youtube.com/watch?v=eTDcoeqj1_w
https://wooono.tistory.com/238
https://gnoej671.tistory.com/39?category=1108752
https://m.blog.naver.com/infoefficien/221229809170
https://herbwood.tistory.com/7
https://yeomko.tistory.com/13
https://nuggy875.tistory.com/33

profile
2021 투빅스 14, 15기 이미지 세미나입니다😀

3개의 댓글

comment-user-thumbnail
2021년 5월 2일

투빅스 14기 김상현
이번 강의는 coursera convolutional neural networks 23~31강 review로 장혜림님께서 진행해주셨습니다.

Object localization & landmark detection

  • object가 어느 위치에 있는지 정보를 출려해주는 것으로 bounding box로 처리하고, 하나의 object에 대해서만 수행 가능하다.
  • output의 형태에 object의 분류확률 이외에 bounding box의 좌표가 들어간다.
  • landmark detection은 bounding box좌표가 아닌 landmark들의 좌표를 예측한다.

Sliding window detection

  • window 크기만큼 convnet의 input으로 사용한다.
  • Fully convolution layer를 이용해 한번의 연산으로 sliding window연산 결과를 얻을 수 있다. 따라서 computational cost를 줄일 수 있다.
  • 하지만 bounding box의 위치가 정확하지 않다.

YOLO algorithm

  • bounding box의 좌표를 output으로 하기 때문에 정확한 경계를 찾을 수 있다.
  • IoU를 통해 예측한 bounding box를 ground-truth box와 비교하여 평가할 수 있다.
  • Non-maximum suppression은 IoU를 이용해 겹치는 bounding box들을 제거하는 방법으로 한 물체에 하나의 bounding box를 감지하게 한다.
  • anchor box는 하나의 grid cell에 여러 물체를 감지할 수 있게 해준다. 하나의 grid cell에 존재하는 각각의 anchor box들은 서로 다른 크기와 비율을 갖는다. 따라서 서로 다르게 생긴 object를 감지할 수 있다.

Region Proposal

  • 관심 있는 영역들만 골라서 classification 하는 방식
  • R-CNN, Fast R-CNN, Faster R-CNN이 있고, region proposal을 제안하는 방법들이 각각 다르고 이에 따라 모델의 이미지 처리 속도 또한 다르다.

Coursera강의에 나오는 부분들을 자세히 설명해주시고, R-CNN 계열에 대한 간략한 설명을 해주셔서 유익했습니다.
좋은 강의 감사합니다!

답글 달기

투빅스 14기 김민경

[Object Localization]

  • 이미지 안의 object를 '인식'하고 그 object의 위치까지 '감지'하는 작업이다.
  • 단 한 개의 object만 포함한다고 가정한다.

[Landmark Detection]

  • 특징점(landmark)의 정의, 레이블의 순서는 다른 이미지에 대해서도 항상 동일해야 한다.

[Object Detection]
(1) Sliding Window Detection

  • 사각형 상자 모양의 window를 사용해 이것을 전체 이미지에 대해 슬라이드 시키고, 모든 사각형 영역에 대해 object가 포함되는지 분류하는 작업이다.
  • 계산 비용이 크다는 단점이 있다. -> 합성곱 층으로 해결하자. -> 여전히 bbox의 위치가 정확하지 않을 수 있다는 단점 존재.

(2) YOLO algorithm

  • Bounding box의 좌표를 output으로 하기 때문에 각 object에 대한 정확한 경계를 찾을 수 있다.

(3) Region Proposals

  • sliding window를 모든 window에 전부 적용하지 않고 몇 개의 지역만을 골라서 분류를 하는 작업이다.
  • R-CNN, Fast R-CNN, Faster R-CNN 등이 있다.

detection 알고리즘에 대한 개념부터 응용까지 다양한 예시를 통해 강의해주셔서 정말 이해가 잘 되었습니다. 유익한 강의 감사합니다:)

답글 달기

이번 1주차 강의는 장혜림님께서 진행해주셨으며, Coursera Convolutional Neural Networks 23강~31강 리뷰 및 정리를 해주셨습니다.

  • Object localization & landmark detection
    (1) Object localization이란, 이미지 안의 object의 위치 정보를 출력해주고, 주로 bounding box로 처리해주는 기법을 의미합니다.
    (2) landmark detection에서 landmark란, 이미지 내의 주요한 지점을 의미하며 여러 개의 output unit을 추가해서 인식하고자 하는 특징점들의 각 좌표를 출력하는 기법을 의미합니다.

  • Sliding Window Deteciton
    이미지를 window 크기만큼 잘라서 학습한 ConvNet의 input으로 사용하고, 이미지의 끝까지 sliding 반복하는 기법을 의미합니다. 단점은 계산 비용이 크다는 것이며, 해결 방안은 Turning FC layer into convolutional layers를 적용하는 것입니다.

  • YOLO algorithm
    YOLO algorithm은 output이 Bounding box의 좌표이기 때문에, 각 object에 대한 정확한 경계를 찾을 수 있다는 장점이 있습니다.

  • Region Proposal
    Resion Proposal이란, Sliding window과 다르게 이미지의 모든 부분을 classification하지 않고, 몇 개의 Region만을 골라서 classification을 수행하는 기법을 의미합니다.

CNN의 핵심이 되는 내용들에 대하여 잘 정리해 주셔서 짧은 시간에 알차게 복습을 할 수 있었던 시간이었던 것 같습니다:) 감사합니다!

답글 달기