일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 파이썬 재귀함수
- 프로그래머스 레벨2
- 파이썬 카카오코딩테스트
- 부스트캠프 회고
- 코딩테스트
- 네이버 부스트캠프
- 프로그래머스LEVEL1
- docker시작하기
- 프로그래머스 레벨3
- 부스트캠프AITech
- 양과늑대
- 프로그래머스
- 프로그래머스 레벨1
- level1
- 도커연결오류
- 프레임워크란?
- 프로그래머스 파이썬
- 파이썬
- 파이썬 양과늑대
- 부스트캠프
- 프로그래머스 양과늑대
- 도커오류
- 카카오 파이썬
- 파이썬 프로그래머스
- Cannot connect to the Docker daemon at unix
- 카카오코딩테스트
- 부캠
- 라이브러리란?
- 카카오코테
- 카카오 코딩테스트
- Today
- Total
코린이의 공부일기
[Boost Camp]MMDetection & Detectron2 본문
MMDetection
- Pytorch 기반의 Object Detection 오픈소스 라이브러리
Pipeline
-input image는 backbone을 통과한 후 Neck(feature map)이 나오며 각각의 feature map에서 RoI을 예측한다.
box prediction과 class prediction을 진행해 예측한다.
-MMDetection의 pipeline은 detection pipeline과 굉장히 유사하다.
DenseHead - RPNHead(localization)
RoIHead - Box head, classification head
-각각의 모듈 단위로 커스터마이징
-config파일을 이용해 통제할 수 있다.
여기서 Config파일은 무엇일까 ?
-Config을 통해 dataset부터 scheduler, optimizer 정의가 가능
-특히, configs에는 다양한 object detection 모델들의 config파일들이 정의돼 있음
-그 중, configs/base/폴더에 가장 기본이 되는 config파일 존재
-> dataset model, schedule, default_runtime 4가지 기본 구성요소 존재
-각각의 base/폴더에는 여러 버전의 config들이 담겨있다.
*Dataset -COCO,VOC,Cityscape등
*Model-faster_Rcnn,retinanet,rpn등
-제공된 베이스코드는 Coco dataset 기준이기 때문에 목적에 알맞게 Train dataset으로 변경해주어야 한다.
파이프라인 둘러보기
1. 라이브러리 및 모듈 inport & config file을 들고오기
2. config 수정하기
class의 이름과 이미지위치, annotation위치, 이미지의 크기 다 변경해준다.
3. 모델 , 데이터셋 build
4. 학습
Detectron2
-Facebook AI Research의 Pytorch 기반 라이브러리
-Object detection 외에도 Segmentation, Pose prediction등 알고리즘도 제공
pipeline
-Setup Config/Setup Trainer/Start Training
1.Setup Config
base config파일을 load하고 argument을 통해 수정하고 싶은 추가로 parsing할 수 있다.
2. Setup Trainer
학습상태를 만들어준다.
3. Start Training
파이프라인 둘러보기
1.라이브러리 및 모듈 import하기
2.데이터셋 등록하기
-커스텀 데이터셋을 사용하고자 할 때는 데이터셋을 등록해야한다.
-전체 데이터셋이 공유하는 정보(ex.class명, 파일 디렉토리 등) 메타데이터로 등록할 수가 있다.
3.config 파일 불러오기
4. config 수정하기
이전에 register한 dataset으로 수정
SOLVER을 통해 데이터셋에 맞게 수정
5. Augmentation mapper 정의
-Detectron2는 MM detection과 다르게 train,validation과 같은 dataset의 파이프라인을 따로 있지 않음
-> MM detection 같은 경우는 transform이 이미 지정되어있는 반면, detectron2 같은 경우에는 직접 Augmentation mapper을 만들어줘야함
장점: 자유도가 높기 때문에 Augmentation을 커스터마이징 할 수 있음.
단점 : 번거로움
6.Trainer 정의
cfg, mapper =MyMapper 을 앞에서 정의해준 Augmentation을 넣어준다.
7.학습
'BOOST CAMP_정리' 카테고리의 다른 글
[Boost Camp] 7강 _ 성능 평가 방식 (0) | 2021.11.11 |
---|---|
semantic segmentation 대회에서 사용하는 방법 (0) | 2021.10.26 |
[Boost camp] 2 Stage Detectors (0) | 2021.09.28 |
[Boost Camp] 09_24 특강 (0) | 2021.09.24 |
[Boost camp] 09_23 특강 (0) | 2021.09.23 |