앎을 경계하기

Machine Learning/For CV 21

YOLOv4 : Optimal Speed and Accuracy of Object Detection

Abstract features 중 몇몇은 특정 모델이나 문제에 국한되어 동작한다. 반면, 대개 모델, 문제, 데이터셋에 적용이 가능한 universal features들도 존재한다. WRC : Weighted Residual Connections CSP : Cross Stage Partial connections CmBN : Cross mini Batch Normalization SAT : Self Adversarial Training Mish-activation Mosaic data augmentation DropBlock Regularization CIoU loss 위와 같은 방법을 적용하여 최신의 결과를 달성함. Acc - MS COCO dataset, 43.5& AP Speed - Tesla V..

[YOLO 정독] YOLOv3 : An Incremental Improvement

YOLO v1, v2에 이어 세번째 버전인 v3 리뷰글을 작성한다. YOLOv3는 v2에서 개선된 버전으로 v2를 먼저 읽고 v3를 읽는 것을 추천한다. Bounding box prediction YOLOv1에서는 anchor box 없이 즉시 bounding box 정보를 예측했다. 좀 더 안정적인 학습을 위해 YOLOv2에서는 anchor box를 사용하여 BBox를 예측하는 방법을 사용한다. 그리고 학습 과정에서 loss function은 SSE 형태의 에러함수를 사용한다. YOLO v3는 logistic regression을 사용해 각 bbox를 위한 objectness score를 예측한다. 우선순위의 bbox가 다른 bbox보다 GT bbox와 많이 겹친다면(IoU가 높다면) score는 1이..

[YOLO 정독] YOLO v2 (YOLO 9000)

YOLO v1에 이어 v2에 대한 정리글을 쓴다. YOLO v2 논문 구조가 매우 신박하다. intro, conclusion 사이에 Main Idea에 대해 Better, Faster, Stronger로 나눠서 설명한다. (보통 intro, related work, method, experiment, conclusion 순) 오히려 좋아 지난 v1과 비교했을 때 달라지는 부분들이 몇 개 있기 때문에 이러한 부분들에 집중해서 포스팅을 해야겠다. 먼저 달라진 점은 v1에서는 20개의 카테고리를 대상으로 Object Detection을 진행하였다. 하지만 객체검출이라하면.. 일반적으로 매우 많은 사물에 대해서도 잘 동작해야한다. 예를 들어, 나무, 사람은 검출하면서 컵은 검출못한다면..? 검출할 수 있는 객체..

Vision Transformer 모델들은 왜 데이터셋이 많아야할까? Inductive bias

Transformer를 vision task를 위해 도입한 논문들을 보면 이런 말을 자주 본다. 트랜스포머 모델들이 CNN 기반 모델보다 inductive bias가 부족하다. Inductive bias가 뭔데..? 구글에 그대로 검색해보면 다음과 같이 설명한다. 학습 알고리즘의 귀납적 편향은 학습자가 경험하지 않은 주어진 입력의 출력을 예측하는 데 사용하는 가정의 집합입니다. 기계 학습에서 특정 목표 출력을 예측하는 방법을 배울 수있는 알고리즘을 구성하는 것을 목표로합니다. 대충 억지로 이해해보면,, 경험하지 않은 입력에 대한 예측을 위해 사용하는 가정이다.. 즉, 학습하지 않은 데이터가 들어갔을 때 잘 예측하기 위한 가정이구나! 이게 Transformer랑 CNN이랑 무슨 상관인지 이해하려면 CNN의..

[YOLO 정독] YOLO v1

YOLO는 "You Only Look Once"라는 논문으로 세상에 나오게 되었다. 작명센스가 미쳤다.. You only live once 아님 ^^ YOLO의 핵심은 "one stage object detection"이라는 것이다. YOLO가 발표되기전 최신논문이었던 R-CNN 계열은 바운딩박스 후보군을 생성하는 region propose part와 bounding box 정보를 예측하는 Bounding box regressor와 해당 바운딩박스의 클래스를 분류하는 classfier를 따로 따로 나눠서 학습시킨다. 이것을 two-stage object detection이라고 함. 아무튼 그러다보니 R-CNN은 학습이 느리고 최적화가 어렵다. (각 역할마다 모델을 다 따로따로 분리해놨으니 당연히 최적화가..

[VISION 논문 읽기] simple copy-paste is a strong data augmentation method for instance segmentation

두 장의 이미지에서 한 장을 source, 나머지 한 장을 target으로 하여 source 이미지 내 객체들의 부분 집합을 선택해 target 이미지에 붙여넣음으로써 어렵고, 새로운 이미지 데이터셋을 만들 수 있다. 코드 이식성이 좋아서 쉽게 다른 모델을 사용할 때 data augmentation 적용할 수 있으며 여러 실험을 진행해본 결과, (object detection, instance segmentation, semantic segmentation, self-supervised learning ...)성능 또한 우수함. 데이터가 적은 상황에서 데이터 효율성을 끌어올릴 수 있다. YOUTUBE : youtu.be/jPWHdj2caC8

MTCNN으로 Face landmark 추출

실행환경 : Google Colab 1. mtcnn 패키지 설치 !pip install mtcnn 2.필요 패키지임포트 import cv2 import glob from mtcnn import MTCNN import warnings warnings.filterwarnings(action='ignore') 3. 랜드마크 추출할 이미지 리스트 얻기 path = '/content/*' file_list = glob.glob(path) input_list = [file for file in file_list if file.endswith(".png")] input_list 4. MTCNN 으로 각 이미지 랜드마크 추출 result = {} for img2 in input_list: img = cv2.cvtCol..

Hierarchical multi-scale attention for semantic segmentation

ABSTRACTsemantic segmentation의 성능을 개선시키기 위해 Multi-scale inference를 사용한다. 여러 스케일의 이미지가 네트워크를 통과하고 그 결과가 averaging 또는 max pooling 연산을 통해 결합된다. 이 논문에서는 multi-scale로 예측한 결과를 결합하기 위해 attention을 사용하는 접근법을 소개한다. 특정 스케일들로 예측하는 것은 특정 고장난 형태를 해결하는 데 더 효과적이다. 그리고 네트워크는 더 나은 예측을 하기 위해서 이러한 스케일들을 선호하는 것을 학습한다. 이 논문에서 사용되는 attention mechanism은 계층적이다. 이 방법은 다른 최근 접근법들보다 학습하는데 대략 4배 더 메모리 효율적이다. 게다가 학습할 때 더 크게 ..

3. 밝기 변환과 공간 필터링(4)

3.6 샤프닝 공간 필터3.6.1 기초샤프닝은 sharp transition을 강하게 하는 것이다.평균화는 영상 블러링 효과가 있음을 앞 장에서 확인했다. 이 연산은 적분과 비슷하다. 따라서 샤프닝 은 미분에 의해 처리될 수 있다.영상 미분은 edge 및 다른 불연속 성분을 강조하고 밝기가 서서히 변하는 영역들을 무시한다.1차 미분 정의의 조건일정한 밝기 영역에서는 0이다.밝기 계단이나 비탈의 시작에서는 0이 아니다.비탈을 따르는 영역도 0이 아니다.∂f∂x=f(x+1)−f(x)\frac{\partial f}{\partial x}=f(x+1)-f(x)∂x∂f​=f(x+1)−f(x)2차 미분 정의의 조건일정 영역에서 0이다.밝기 계단, 비탈의 시작과 끝은 0이 아니다.일정 기울기의 비탈을 따라서는 0이다...