์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- ๋ฐ์ดํฐ๋ถ์์ ๋ฌธ๊ฐ
- ๋ ๋ฆฝํ๋ณธ
- ๊ตฐ์งํ
- ADP
- ์ธ๋์ํ๋ง
- PCA
- dataframe
- ๋ฐ์ดํฐ๋ถ์
- ๋์ํ๋ณธ
- ํฌ๋กค๋ง
- DBSCAN
- ๋น ๋ฐ์ดํฐ
- ํ์ด์ฌ
- numpy
- ADsP
- pandas
- datascience
- ์ฃผ์ฑ๋ถ๋ถ์
- Python
- ๋ฐ์ดํฐ๋ถ๊ท ํ
- ์ค๋ฒ์ํ๋ง
- t-test
- opencv
- LDA
- ๋ฐ์ดํฐ๋ถ์์ค์ ๋ฌธ๊ฐ
- Lambda
- ์๋ํด๋ผ์ฐ๋
- ๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ
- iloc
- ํ ์คํธ๋ถ์
Data Science LAB
[CV] Object Detection 1stage detectors ๋ณธ๋ฌธ
[CV] Object Detection 1stage detectors
ใ ใ ใ ใ 2023. 5. 22. 00:46
2 stage detector๋ localizatin๊ณผ classification์ ๋ชจ๋ ํด์ผ ํ์ต์ด ์งํ๋๊ธฐ ๋๋ฌธ์ ์๋๊ฐ ๋งค์ฐ ๋๋ฆฌ๋ค๋ ๋จ์ ๋๋ฌธ์ 1 stage detector๊ฐ ๋ฑ์ฅํ๊ฒ ๋์๋ค.
1 stage detectors
- localization, classification ๋์์ ์งํ
- ์ ์ฒด ์ด๋ฏธ์ง์ ๋ํด ํน์ง ์ถ์ถ, ๊ฐ์ฒด ๊ฒ์ถ์ด ์ด๋ฃจ์ด์ง -> ๊ฐ๋จํ๊ณ ์ฌ์ด ๋์์ธ
- ์๋๊ฐ ๋งค์ฐ ๋น ๋ฆ (Real-time detection)
- ์์ญ์ ์ถ์ถํ์ง ์๊ณ ์ ์ฒด ์ด๋ฏธ์ง๋ฅผ ๋ณด๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด์ ๋ํ ๋งฅ๋ฝ์ ์ดํด๊ฐ ๋์ (Background error๊ฐ ์ ์)
YOLO
- YOLO v1 : ํ๋์ ์ด๋ฏธ์ง์ Bbox์ classification ๋์์ ์์ธกํ๋ 1 stage detector ๋ฑ์ฅ
- YOLO v2 : ๋น ๋ฅด๊ณ ๊ฐ๋ ฅํ๊ณ ๋ ์ข๊ฒ, 3๊ฐ์ง ์ธก๋ฉด์์ model ํฅ์
- YOLO v3 : multi-scale feature maps ์ฌ์ฉ
- YOLO v4 : ์ต์ ๋ฅ๋ฌ๋ ๊ธฐ์ ์ฌ์ฉ, (BOF : Bag of Freebies, BOS: Bag of Specials)
- YOLO v5: ํฌ๊ธฐ๋ณ๋ก ๋ชจ๋ธ ๊ตฌ์ฑ (Small, Medium, Large, Xlarge)
- Region proposal ๋จ๊ณ X
- ์ ์ฒด ์ด๋ฏธ์ง์์ bbox ์์ธก๊ณผ ํด๋์ค๋ฅผ ์์ธกํ๋ ์ผ์ ๋์์ ์งํ
- ์ด๋ฏธ์ง, ๋ฌผ์ฒด๋ฅผ ์ ์ฒด์ ์ผ๋ก ๊ด์ฐฐํ์ฌ ์ถ๋ก ํ๊ธฐ ๋๋ฌธ์ ๋งฅ๋ฝ์ ์ดํด๊ฐ ๋์์ง
Network
- GoogleNet์ ๋ณํ ๋ฒ์ ์ผ๋ก 24๊ฐ์ Conv layer๋ก ํน์ง์ ์ถ์ถํ๊ณ 2๊ฐ์ fc layer๋ก box์ ์ขํ๊ฐ๊ณผ ํ๋ฅ ์ ๊ณ์ฐํจ
1. ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ 7 X 7 ๊ทธ๋ฆฌ๋ ์์ญ์ผ๋ก ๋๋
2. ๊ฐ ๊ทธ๋ฆฌ๋ ์์ญ๋ง๋ค B๊ฐ์ ์๋ก ๋ค๋ฅธ bbox์ confidence score๋ฅผ ๊ณ์ฐํจ (B=2)
3. ๊ฐ ๊ทธ๋ฆฌ๋ ์์ญ๋ง๋ค C๊ฐ์ class์ ๋ํด ํด๋น ํด๋์ค์ผ ํ๋ฅ ์ ๊ณ์ฐํจ (C=20)
1. ํ๋์ ๊ทธ๋ฆฌ๋๋ ์ด 30๊ฐ์ ์ฑ๋์ ๊ฐ์ง
2. ์ด 30๊ฐ์ ์ฑ๋ ์ค ๋งจ ์ 5๊ฐ์ ์ฑ๋์ ์ฒซ๋ฒ์งธ bbox์ ์ ๋ณด๋ฅผ ๋ด๋๋ค (x,y,w,h, confidence score)
3. 6~10๋ฒ์งธ ์ฑ๋์ ๋๋ฒ์งธ bbox์ ์ ๋ณด๋ฅผ ๋ด์ (grid cell๋ง๋ค 2๊ฐ์ bbox๊ฐ ์กด์ฌํจ)
4. ๋๋จธ์ง 20๊ฐ์ ์ฑ๋์ class์ score๋ฅผ ์๋ฏธํจ (yolo์์ ์ฌ์ฉ๋ํ์ค์นผ ๋ฐ์ดํฐ์ ์ ํด๋์ค๋ ์ด 20๊ฐ)
5. ๊ฐ๊ฐ์ class score๋ ๊ฐ bbox ๋๊ฐ์ ํ๋ฅ ์ ๊ฐ๊ฐ ์์ธกํ๋ค.
=> ์ด 7*7*2 = 98 ๊ฐ์ ์์ธก cell์ด ๋ง๋ค์ด ์ง๋ค. ์ด 98๊ฐ์ cell์ threshold๊ฐ์ผ๋ก ํํฐ๋ง ํ descendingํ๊ณ , NMS ์ฐ์ฐ์ ์ํํ๋ค.
Loss
์ฅ์
- Faster R-CNN์ ๋นํด 6๋ฐฐ ๋น ๋ฆ
- ๋ค๋ฅธ real-time detector์ ๋นํด 2๋ฐฐ ๋์ ์ ํ๋
- ์ด๋ฏธ์ง ์ ์ฒด๋ฅผ ๋ณด๊ธฐ ๋๋ฌธ์ ํด๋์ค์ ์ฌ์ง์ ๋ํ ๋งฅ๋ฝ์ ์ธ ์ ๋ณด๋ฅผ ๊ฐ์ง
- ๋ฌผ์ฒด์ ์ผ๋ฐํ๋ ํํ์ ํ์ตํจ -> ์๋ก์ด ๋๋ฉ์ธ์ ๋ํ ์ด๋ฏธ์ง์ ๋ํด์๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์
๋จ์
- 7X7 ๊ทธ๋ฆฌ๋ ์์ญ์ผ๋ก ๋๋์ด bbox predcition -> ๊ทธ๋ฆฌ๋๋ณด๋ค ์์ ํฌ๊ธฐ์ object ๊ฒ์ถ X
- ์ ๊ฒฝ๋ง์ ํต๊ณผํ๋ฉฐ ๋ง์ง๋ง feature ์ฌ์ฉ -> ์ ํ๋ ํ๋ฝ
YOLOv2
- ์ ํ๋, ์๋, ๋ ๋ง์ ํด๋์ค๋ฅผ ์์ธกํ๋ ๋ฐฉํฅ์ผ๋ก ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๋์
- Batch Normalization : mAP 2% ์ฑ๋ฅ ํฅ์
- High Resolution Classifier
- YOLOv1: 224x224 ์ด๋ฏธ์ง๋ก ์ฌ์ ํ์ต๋ VGG๋ฅผ 448x448 Detection Task์ ์ ์ฉ
- YOLOV2: 448x448 ์ด๋ฏธ์ง๋ก ์๋กญ๊ฒ finetuning
-> mAP 4% ์ ๋ ์ฑ๋ฅ ํฅ์
- Convolution with anchor boxes : FCN layer ์ ๊ฑฐ, Anchor box๋ฅผ ๋์ , K means clusters on COCO datasets
(5๊ฐ์ anchor box)
- ์ขํ ๊ฐ ๋์ offset ์์ธกํ๋ ๋ฌธ์ ๊ฐ ๋จ์ํ๊ณ ํ์ตํ๊ธฐ ์ฌ์ : mAP 5% ์ ๋์ ์ฑ๋ฅํฅ์
- Fine-grained features
- ํฌ๊ธฐ๊ฐ ์์ feature map์ low level ์ ๋ณด๊ฐ ๋ถ์กฑํจ
- Early feature map์ ์์ low level ์ ๋ณด๋ฅผ ๋ด์
-> Early feature map์ late feature map์ ํฉ์ณ์ฃผ๋ layer ๋์
- 26x26 feature map์ ๋ถํ ํ์ ๊ฒฐํฉ์ ํจ
- Multi-scale training : ๋ค์ํ ์ ๋ ฅ ์ฌ์ด์ฆ์ ์ด๋ฏธ์ง ์ฌ์ฉ
- ImageNet (classification) ๋ฐ์ดํฐ์ ๊ณผ COCO (detection) ๋ฐ์ดํฐ์ ์ ํจ๊ป ์ฌ์ฉ
- WordTree ๊ตฌ์ฑ : 9418๊ฐ์ ๋ฒ์ฃผ
YOLO v3
- Backbone์ Darknet53์ผ๋ก ๋ณ๊ฒฝํจ
- Skip connection์ ์ ์ฉํจ
- Max pooling์ ์ฌ์ฉํ์ง ์๊ณ ๋์ Convolution stride 2๋ฅผ ์ฌ์ฉํจ
- ResNet-101, ResNet-142์ ๋น์ทํ ์ฑ๋ฅ์ ์ง๋๊ณ FPS๊ฐ ๋๋ค๋๊ฒ ์ฅ์
RetinaNet
1-Stage Detector๋ RPN์ด ์๊ณ ๊ทธ๋ฆฌ๋๋ณ๋ก bounding box๋ฅผ ๋ฌด์กฐ๊ฑด ์์ธกํ๊ธฐ ๋๋ฌธ์ background๋ฅผ ์ก๋ ๊ฒฝ์ฐ๊ฐ ๋ ๋ง์ด ์๊ฒจ์ ํด๋์ค ๋ถ๊ท ํ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค.
Class ๋ถ๊ท ํ
- Positive sample(๊ฐ์ฒด) < negative sample(๋ฐฐ๊ฒฝ)
Anchor box ๋๋ถ๋ถ ๋ฐฐ๊ฒฝ์ด๋ค.
- 2 Stage Detector์ ๊ฒฝ์ฐ region proposal์์ background sample์ ์ ๊ฑฐํ๋ค.
Positive/Negative sample ์๋ฅผ ์ ์ ํ๊ฒ ์ ์งํ๋ค.
Cross Entropy์ Scaling Facor๋ฅผ ์ถ๊ฐํ์๋ค.
์๋ก์ด Loss function์ ์ ์ํ๋ค : CSE + scaling factor
์ฌ์ด ์์ ์ ์ ์ ๊ฐ์ค์น๋ฅผ ์ฃผ๊ณ ์ด๋ ค์ด ์์ ์ ํฐ ๊ฐ์ค์น๋ฅผ ๋ถ์ฌํ๋ค.
Focal Loss
1) Object detection์์ back ground์ class์ imbalance ์กฐ์
2) Object detection ๋ฟ๋ง ์๋๋ผ class imbalance๊ฐ ์ฌํ dataset์ ํ์ตํ ๋ ๋ชจ๋ ํ์ฉ ๊ฐ๋ฅํจ
SSD
SSD | YOLO |
300X300 input | 448X448 input |
2๊ฐ์ fc layer | 1X1 Conv ์ฌ์ฉํด FC layer X |
SSD
- Extra Conv layer์ ๋์จ feature map๋ค์ ๋ชจ๋ detection ์ํ
- FC layer ๋์ Conv layer ์ฌ์ฉํด ์๋ ํฅ์
- Default box (anchor box) ์ฌ์ฉํด ์๋ก ๋ค๋ฅธ scale๊ณผ ๋น์จ์ ๊ฐ์ง ๋ฏธ๋ฆฌ ๊ณ์ฐ๋ box ์ฌ์ฉ
Network
VGG 16 (Backbone) + Extra Conv Layers
input : 300X300
Multi scale feature maps
anchor box๋ค์ ์ค์ฌ์ ์ ์ขํ์ class์ ๊ฐ์ + 1 (background) => ์ด 25๊ฐ์ ์์ธก๊ฐ์ด ๋์ด
NBbox ๋ 0.2~0.9๊น์ง ์ ํ์ ์ผ๋ก scale์ ๋๋ ค๋๊ฐ๋ฉฐ ์ด 6๊ฐ์ default box๋ฅผ ํ์ฉํจ
Default Box
feature map์ ๊ฐ cell๋ง๋ค ์๋ก ๋ค๋ฅธ scale, ๋น์จ์ ๊ฐ์ง ๋ฏธ๋ฆฌ ์ ํด์ง box๋ฅผ ์์ฑํจ
Faster R-CNN์ anchor box์ ์ ์ฌํจ
์ต์ข ์ ์ผ๋ก ์ด 8732๊ฐ์ default box๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ค.
Training
- Hard Negative Mining์ ์ํ
- NMS๋ฅผ ์ํ
'๐ฅ๏ธ Computer Vision > Object Detection' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[CV] Object Detection library (1) - Detectron 2 (0) | 2023.05.28 |
---|---|
[CV] Object Detection Neck ์ ๋ฆฌ (0) | 2023.05.21 |
[CV] Object Detection 2 Stage Detectors (R-CNN, Fast-RCNN, Faster-RCNN) ์ ๋ฆฌ (0) | 2023.05.21 |
[CV] Object Detection Overview (evaluation ๋ฐฉ๋ฒ) (0) | 2023.05.18 |