본문 바로가기

AIFFEL

(25)
[AIFFEL/GoingDeeper] Object Detection Architecture 딥러닝 기반의 Object Detection 모델은 크게 Single stage detector와 Two stage detector로 구분할 수 있다. Many stage라고 적혀있는 방법에서는 물체가 있을 법한 위치의 후보(proposals) 들을 뽑아내는 단계, 이후 실제로 물체가 있는지를 Classification과 정확한 바운딩 박스를 구하는 Regression을 수행하는 단계가 분리되어 있다. 대표적으로는 Faster-RCNN을 예로 들 수 있다. One stage Detector는 객체의 검출과 분류, 그리고 바운딩 박스 regression을 한 번에 하는 방법이다. Single stage를 통해서 한번에 연산해내는 것이 속도면에서 빠르다 📍 Two-Stage Detector ✔ R-CNN 대..
[AIFFEL/GoingDeeper] Object Detection 📍 Object Detection - 어떤 이미지를 입력했을 때 그 결과가 해당 객체를 localization(bounding box)해주고, 해당 box안에 있는 객체가 무엇인지 classification까지 해주는 것 Multi object detection을 통해 이미지에 있는 여러 물체를 한꺼번에 찾아내야 한다. 이때는 어떻게 물체를 찾아낼 수 있을까?? ✔ 1.슬라이딩 윈도우(Sliding Window) 큰 이미지에서 여러 물체를 찾으려면 ?? 슬라이딩 윈도우(sliding window) 전체 이미지를 적당한 크기의 영역으로 나눈 후에, 각각의 영역에 대해 Localization network를 반복 적용해 보는 방식. Localization network의 입력으로 만들기 위해서 원본 이미지에..
[AIFFEL/GoingDeeper] Object Detection을 위한 기본지식 ✔ 1. 용어 정리 Classification - 주어진 이미지 안의 물체가 무엇인지 알아내는 것 - 한 가지 물체를 찾기 때문에 가장 큰 물체를 알아내려고 한다 - 가장 단순한 딥러닝 형태 Localization - 주어진 이미지 안의 물체가 어느 위치에 있는지 찾아내는 것 - 주로 Bounding Box라는 사각형 형태로 위치를 나타낸다 - 물체의 위치가 담긴 사각형을 (min_x, min_y, max_x, max_y)로 나타내거나 (min_x, min_y, width, height)로 나타낸다. Object Detection - 주어진 이미지 안의 물체가 무엇인지, 어디에 있는지 모두 알아내는 것 - 하나의 물체만 대상으로 할 수도 있지만, 보통 여러 물체를 찾아낸다. - 만 위 이미지처럼 강아지가..
[AIFFEL/GoingDeeper] CAM(Class Activation Map) 분류모델에 강아지, 고양이 이미지가 입력으로 들어온다고 생각해보자. 먼저 일반적인 이미지 분류 모델은 이미지의 local feature를 추출하기 위해 CNN으로 구성된 특성 추출용 백본 네트워크가 앞에 있다. 백본 네트워크에서 추출된 특성 맵을 fully connected layer에 통과시켜 얻어진 logit을 소프트맥스 활성화 함수에 통과시키면, 입력 이미지가 강아지인지 고양이인지 확률을 얻을 수 있다 그렇다면 대체 CNN 모델이 입력 이미지의 어떤 부분을 중점적으로 보고 해당 입력 이미지가 강아지 사진이라는 것을 예측했을까? 인공지능이라도 그렇게 판단한 정량적인 이유가 분명히 있을 것이다. 이러한 이유를 알 수 있는 방법 중 하나가 CAM(Class Activation Map)이다. 📍 CAM(C..
[AIFFEL/GoingDeeper] OCR - Text recognition https://journeysnote.tistory.com/50 [AIFFEL/GoingDeeper] OCR - Text detection 딥러닝기반의 OCR에 대해 정리해보려 한다. OCR = Optical Character Recognition , 이미지 내의 글자를 자동으로 인식하는 인공지능 기술 ✔ OCR = Text detection(문자의 영역 검출) + Text recognition(검출된.. journeysnote.tistory.com 📍 Text recognition - 검출된 영역의 문자가 무엇인지를 인식해내는 과정 ✔ 1. Unsegmented Data : 분리에 드는 비용이 많이 들거나 어려워 Segmentation이 되어있지 않은 데이터 예를 들어, 아래 그림과 같이 annotat..
[AIFFEL/GoingDeeper] OCR - Text detection 딥러닝기반의 OCR에 대해 정리해보려 한다. OCR = Optical Character Recognition , 이미지 내의 글자를 자동으로 인식하는 인공지능 기술 ✔ OCR = Text detection(문자의 영역 검출) + Text recognition(검출된 영역의 문자 인식) Text detection : 일반적인 Object detection 태스크를 문자 찾아내기로 확장한 버전이라고 생각. Text detection은 단순히 Object detection 기법뿐 아니라 Segmentation 기법도 동원되며, 문자가 가지는 특성도 고려 Text recognition : 검출된 영역의 문자가 무엇인지를 인식해내는 과정 📍 Text detection - 문자는 몇 개가 모여서 단어 혹은 문장을 ..
[AIFFEL/GoingDeeper] Cutmix & Mixup Augmentation https://journeysnote.tistory.com/36?category=943335 [AIFFEL/GoingDeeper] Data Augmentation(데이터 증강) - 갖고 있는 데이터셋을 여러가지 방법으로 증강시켜(augment) 실질적인 학습 데이터셋의 규모를 키울 수 있는 방법이다 - 일반적으로 하드디스크에 저장된 이미지 데이터를 메모 journeysnote.tistory.com 조금 더 복잡한 augmentatino 방법을 알아보자. 1. Cutmix Augmentation - 논문 : https://arxiv.org/pdf/1905.04899.pdf - 네이버 클로바(CLOVA)에서 발표한 CutMix: Regularization Strateg..
[AIFFEL/GoingDeeper] ResNet-34와 ResNet-50 Tensorflow 구현하기 - ResNet은 깊은 네트워크의 학습이 어려운 점을 해결하기 위해서 레이어의 입력값을 활용하여 레이어가 "residual function"(잔차 함수)을 학습하도록 한다. - 단순히 말하자면 일종의 지름길("shortcut connection")을 통해서 레이어가 입력값을 직접 참조하도록 레이어를 변경했다고 보면 된다. - Shortcut connection은 앞에서 입력으로 들어온 값을 네트워크의 출력층에 곧바로 더해준다. 네트워크는 출력값에서 원본 입력을 제외한 잔차(residual) 함수를 학습하기 때문에 네트워크가 ResNet이라는 이름을 가지게 되었다. - https://journeysnote.tistory.com/30?category=943336 [AIFFEL/FUNDAMENTALSTAGE/..