Computer Vision 6

논문 리뷰. Efficient Adaptive Ensembling for Image Classification

Efficient Adaptive Ensembling for Image Classification 문장과 그 내용 모두 간결해서 정말 쉽게 읽을 수 있는 논문이다. EfficientNetB0 두개 앙상블 했을 뿐인데, 성능 개선이 대폭 이루어져 이게 실제로 되나 의심스러울 정도다. 코드 구현을 통해서 CIFAR-100 데이터셋으로 (B0 싱글 네트워크와 비교하며) 검증을 진행할 계획이다. 참조 * https://arxiv.org/abs/2206.07394 Abstract (초록) 근래 CV 연구는 엄청 복잡한 설계로 작은 성취를 얻는 데 그치나, 우리는 복잡한 설계없이 성능을 부스트하는 참신한 방법을 제안한다. the trend in Computer Vision is to achieve minor imp..

개발 2023.03.21

Object Detection 논문 리뷰. You Only Look Once:Unified, Real-Time Object Detection

앞서 정리한 Object Detection의 기법이 상당히 반영되어 있는 YOLOv1의 논문을 리뷰해보고 성능을 더 끌어올린 기법이 무엇인지를 알아보자. 또, 다음에 이어 그대로 구현도 해볼 예정이다. 참조 https://arxiv.org/abs/1506.02640 Abstract (초록) Object Detection을 바운딩 박스와 그 클래스 확률을 공간적으로 분리하여 푸는 회귀 문제로 짰다. 하나의 신경망으로 이미지에서 바운딩 박스와 클래스 예측을 한번에 수행한다. YOLO는 Localization Error가 더 많지만, 배경을 오브젝트로 예측하는 False Positive는 적습니다. YOLO는 오브젝트의 General Representation을 잘 학습합니다. (오브젝트에 대한 일반화 성능이..

개발 2022.12.25

Object Detection 정리 4. Classification을 Localization에 추가

AI 딥러닝을 통한 Object Detection에 대해서 간단하게 정리해보자. 지난 정리 3에서는 Grid 방식을 적용하여 오브젝트가 다수인 경우에 대응할 수 있도록 했다. 문제. 그래서 찾은 오브젝트가 무엇인가? 우리 모델의 예측은 아직 위치 정보만 포함하고 있다.(Localization Only) 즉, 찾아낸 오브젝트가 무엇인지 분류하지 않는다. 이번 포스트에서는 우리 모델이 위치 정보와 함께 분류 정보도 리턴하도록 수정한다.(Detection = Localization + Classification) 해결. 모델 Output Dimension에 Classification Dimension을 추가하자. 분류 모델은 클래스 개수만큼의 Output Dimension을 가진다. 클래스가 [남자, 여자, ..

개발 2022.12.23

Object Detection 정리 3. Grid for Muliple Objects 및 Non-Maximum Suppresion (NMS)

AI 딥러닝을 통한 Object Detection에 대해서 간단하게 정리해보자. 지난 정리 2에서는 Localization 모델에 Confidence Score를 추가하여 오브젝트가 없는 경우에 대응할 수 있도록 했다. 문제. 오브젝트가 여러개라면? 예제와 같이 오브젝트가 2개인 이미지를 우리 모델은 제대로 예측해낼 수 없다. 오직 BBOX 하나에 대한 위치정보만 return하기 때문이다. 해서 아마도 우리 모델은 두 오브젝트의 중간값 혹은 평균값을 return할 것이다. 해결. 그리드 방식으로 접근하자. 그리드 방식은 이미지를 그리드로 나눠 각 그리드에서 각각 위치 정보를 return한다. 상기 예제 이미지처럼 4x4그리드로 나눠서 위치 정보를 return하기 위해서 모델의 Head 구조를 수정해야하며..

개발 2022.12.22

Object Detection 정리 2. Objectness 혹은 Confidence Score

AI 딥러닝을 통한 Object Detection에 대해서 간단하게 정리해보자. 지난 정리 1에서는 딥러닝 분류모델의 Head를 변경하여 Localization 모델을 완성했다. 그 결과 Bounding Box를 표시할 수 있는 위치 정보를 얻을 수 있었다. 문제. 오브젝트가 없다면? 현재 완성한 모델에 학습한 Object가 없는 이미지를 Input으로 넣으면 어떻게 될까? 모델은 무조건 위치 정보를 Output으로 return해야 하므로 임의의 위치 정보를 return할 것이다. 이는 우리의 프로그램 또는 어플리케이션이 의도하는 바가 아니다. 해결. Objectness 혹은 Confidence Score을 도입하자. 이 문제를 해결하기 위해서 우리는 Output Dimension을 하나 더 늘릴 것이다..

개발 2022.11.30

Object Detection 정리 1. Localization과 Bounding Box

AI 딥러닝을 통한 Object Detection에 대해서 간단하게 정리해보자. 1. 분류 모델에서 시작. Computer Vision분야로 CNN을 기반으로 한 분류 모델에서 시작한다. 분류모델은 마지막 레이어는 class_num와 동일한 수의 Output Dimension을 가진다. 예를 들어 텐서플로(Tensorflow)에서 제공하는 ImageNet 데이터로 사전 훈련된(Pre-trained on ImageNet) 분류모델 MobileNet은 Output Dimension이 1,000이다. # jupyter notebook import tensorflow as tf model = tf.keras.applications.mobilenet.MobileNet() model.summary() # 마지막 레..

개발 2022.11.29
728x90