Image segmentation based on DL
K-fashion Dataset from AI-Hub
์์ฒ ๋ฐ์ดํฐ: 2020๋ 8์๋ถํฐ 11์๊น์ง ๊ตญ๋ด ํจ์ ์ด๋ฏธ์ง 1000๋ง ๊ฑด ์ค ๋ชจ๋ธ ์ผ๊ตด ๋ชจ์์ดํฌ ์์ ๋ฑ ํํฐ๋ง์ ๊ฑฐ์ณ ๋ฐ์ดํฐ ๊ตฌ์ถ์ ์ ํฉํ ์๋ฅ ์ฐฉ์ฅ ์ด๋ฏธ์ง 120๋ง ๊ฑด.
๋ณธ ๋ฐ์ดํฐ๋ 2๋จ๊ณ์ ๋ ์ด๋ธ๋ง ์์ ๊ณผ 2๋จ๊ณ ๊ฒ์ ์์ ์ ๊ฑฐ์ณ ํ์ต๋ฐ์ดํฐ๋ก ๊ตฌ์ถ๋ ์ํ์ด๋ค.
| ๋๋ถ๋ฅ | ์ธ๋ถ ์์ฑ |
|---|---|
| ์์ ์นดํ ๊ณ ๋ฆฌ | ํ, ๋ธ๋ผ์ฐ์ค, ํฐ์ ์ธ , ๋ํธ์จ์ด, ์ ์ธ , ๋ธ๋ผํ, ํ๋ํฐ |
| ํ์ ์นดํ ๊ณ ๋ฆฌ | ์ฒญ๋ฐ์ง, ํฌ์ธ , ์ค์ปคํธ, ๋ ๊น ์ค, ์กฐ๊ฑฐํฌ์ธ |
| ์์ฐํฐ ์นดํ ๊ณ ๋ฆฌ | ์ฝํธ, ์ฌํท, ์ ํผ, ํจ๋ฉ, ๋ฒ ์คํธ, ๊ฐ๋๊ฑด, ์ง์ |
| ์ํผ์ค ์นดํ ๊ณ ๋ฆฌ | ๋๋ ์ค, ์ ํ์ํธ |
| ์ปฌ๋ฌ | ๋ธ๋, ํ์ดํธ, ๊ทธ๋ ์ด, ๋ ๋, ํํฌ, ์ค๋ ์ง, ๋ฒ ์ด์ง, ๋ธ๋ผ์ด, ์๋ก์ฐ, ๊ทธ๋ฆฐ, ์นดํค โฆ ์ค๋ฒ |
| ๋ํ ์ผ | ๋น์ฆ, ๋จ์ถ, ๋ํธ๊ฝ๋ฐฐ๊ธฐ, ์ฒด์ธ, ์ปท์คํ, ๋ธ๋ธ๋ ์คํฐ๋, ๋๋กญ์๋, ์์, ํ๋ฆด, ํ๋ฆฐ์ง โฆ ํผํ |
| ํ๋ฆฐํธ | ์ฒดํฌ, ์คํธ๋ผ์ดํ, ์ง๊ทธ์ฌ๊ทธ, ํธํผ, ์ง๋ธ๋ผ, ๋ํธ, ์นด๋ฌดํ๋ผ์ฅฌ, ํ์ด์ฆ๋ฆฌ, ์๊ฐ์ผ โฆ ๋ฏน์ค |
| ์์ฌ | ํผ, ๋ฌด์คํ, ์ค์จ์ด๋, ํค์ด๋ํธ, ์ฝ๋๋ก์ด, ์ํธ, ๋ฐ๋, ์ ์ง, ๋ํธ โฆ ์คํ๋ฑ์ค |
| ์์ ๊ธฐ์ฅ | ํฌ๋กญ, ๋ ธ๋ฉ, ๋กฑ |
| ํ์ ๊ธฐ์ฅ | ๋ฏธ๋, ๋๋ ์ค, ๋ฏธ๋, ๋ฐ๋ชฉ, ๋งฅ์ |
| ์์ฐํฐ ๊ธฐ์ฅ | ํฌ๋กญ, ๋ ธ๋ฉ, ํํ, ๋กฑ, ๋งฅ์ |
| ์ํผ์ค ๊ธฐ์ฅ | ๋ฏธ๋, ๋๋ ์ค, ๋ฏธ๋, ๋ฐ๋ชฉ, ๋งฅ์ |
| ์๋งค๊ธฐ์ฅ | ๋ฏผ์๋งค, ๋ฐํ, ์บก, 7๋ถ์๋งค, ๊ธดํ |
| ๋ฅ๋ผ์ธ | ๋ผ์ด๋๋ฅ, ์ ๋ฅ, ๋ธ์ด๋ฅ, ํํ ๋ฅ, ์คํ์๋, ์์๋, ์คํ์ด๋ฅ, ๋ ธ์นด๋ผ, ํ๋ โฆ ์ค์ํธํํธ |
| ์นผ๋ผ | ์ ์ธ ์นผ๋ผ, ๋ณด์ฐ์นผ๋ผ, ์ธ์ผ๋ฌ์นผ๋ผ, ์์นผ๋ผ, ํด๋ก์นผ๋ผ, ํผํฐํฌ์นผ๋ผ, ๋์น๋์นผ๋ผ โฆ ๋ฐด๋์นผ๋ผ |
| ์์,์์ฐํฐ,์ํผ์ค | ํ์ดํธ, ๋ ธ๋ฉ, ๋ฃจ์ฆ, ์ค๋ฒ์ฌ์ด์ฆ |
| ํ์ | ์คํค๋, ๋ ธ๋ฉ, ์์ด๋, ๋ฃจ์ฆ, ๋ฒจ๋ณดํ |
- Faster RCNN: CNN + RPN
- ์ ํํ๊ณ , ์ธ์๋ฅ ์ด ์ข๋ค.
- ๋๋ฆฌ๋ค. ์ ์ด์ ์ค์๊ฐ์ฉ์ผ๋ก ๊ฐ๋ฐ๋ ๊ฒ์ด ์๋๊ธฐ์.
- YOLO(You Only Look Once)
- ์ต์ด์ Real-Time Object Detection
- ๋น ๋ฅด๊ณ ์ฌ์ฉ ์ฝ๋ค. v3์ ๊ฒฝ์ฐ ๋น๊ต์ ์ ํ
- ๊ฒน์ณ์ง ์ฌ๋ฌผ์ ๊ตฌ๋ถ ์ด๋ ต๋ค.
- SSD(Single Shot MultiBox Detector)
- ๋น๊ต์ ๋น ๋ฅด๊ณ ๋น๊ต์ ์ ํํ๋ค
- YOLO์ ๋นํด ์ฌ์ฉ์ด ์ฝ์ง๋ ์๋ค.
-
FCN (Fully Convolutional Network)
- ๊ธฐ์กด Classification์ฉ CNN ๋ชจ๋ธ(AlexNet, VGG ๋ฑ)์ ๊ฒฝ์ฐ ๋ฌผ์ฒด๊ฐ ์ด๋ค class์ ์ํ๋์ง๋ ์์ธกํ ์ ์์ง๋ง parameter์ ๊ฐ์์ ์ฐจ์์ ์ค์ด๋ layer๋ค์ ๊ฐ์ง๊ณ ์์ด์, ์์ธํ ์์น์ ๋ณด๋ฅผ ์๊ณ ๋ฌผ์ฒด๊ฐ ์ด๋ ์กด์ฌํ๋์ง ์์ธกํ ์ ์๊ฒ ๋จ.
- FCN์ ๊ฒฝ์ฐ fully connected ์ธต์ 1x1 convolution ์ธต์ผ๋ก ๋ฐ๊ฟ
- ์ด๋ฏธ์ง์ ํฌ๊ธฐ์ ์๊ด ์์ด segmentation map์ ๋ง๋ค ์ ์๊ฒ ๋จ
- ํ์ง๋ง Semantic segmentation
-
Mask RCNN (Faster RCNN + ๋ณํ FCN) - Main Model
- RPN(Region Proposal Network)์ ํ์ฉํ Faster RCNN Object Detection ๋ชจ๋ธ๊ณผ, ์ฝ๊ฐ์ ๋ณํ๋ FCN์ผ๋ก ๊ตฌ์ฑ๋์ด ์์
-
YOLACT (You Only Look At CoefficienTs)
- YOLACT์ ๋คํธ์ํฌ๋ ResNet101 + FPN ์ ์ด์ฉํ์ฌ RetinaNet์ ๊ธฐ๋ฐํ ๊ตฌ์กฐ
- ์ ํ๋ ๊ฐ์๊ฐ ์กฐ๊ธ ์์ง๋ง ์๋ ๋ฉ๋ฆฌํธ๊ฐ ๋ ํฌ๋ค๊ณ ํจ
-
BlendMask
- ๋ ผ๋ฌธ ๊ณต๋ถ ํ์
Clothes Segmentation์ ์ด๋ฏธ์ง(์์ ํ๋ ์) ๋ด ์๋ฅ์ ์์น๋ฅผ ํฝ์ ๋จ์๋ก ์์ธกํ๋ ๊ณผ์ ์ด๋ฉฐ, ์ด๋ฏธ์ง ๋ด ๊ฐ ํฝ์ ์ ๋ํด ํด๋์ค๋ฅผ ์์ธกํ๋ ๋ฐฉํฅ์ผ๋ก ์งํ๋๋ค.
Clothes Segmentation์ ํฌ๊ฒ ์๋ 3๊ฐ์ง์ ์์ญ์ผ๋ก ๋ถ๋ฅํด๋ณด์.
- Semantic Segmentation : ๊ฐ์ ํด๋์ค๋ฅผ ๊ฐ๋ ๋ฌผ์ฒด๋ค์๊ฒ ๊ฐ์ฒด ๊ฐ๋ ์์ด ๋ชจ๋ ๊ฐ์ ํด๋์ค๋ก ์ธ์ (e.g. top, trouser, ...)
- Instance Segmentation : ๊ฐ์ ํด๋์ค๋ฅผ ๊ฐ๋ ๋ฌผ์ฒด๋ค์๊ฒ ๊ฐ์ฒด ๊ฐ๋ ์ ๋ถ์ฌ (e.g. top1, top2, hat1, hat2, hat3, ...)
- Panoptic Segmentation : Semantic Segmentation๊ณผ Instance Segmentation์ด ํฉ์ณ์ง ๊ฐ๋ (์๋ฐํ๊ฒ ์กฐ๊ธ ๋ค๋ฆ.) ์ผ๋ก, ๋ ๊ฐ์ง ํน์ฑ์ ๋ชจ๋ ๊ฐ๋ ๋ถ์ผ
์ด์ค ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๋ Semantic Segmentation๋ถํฐ ์๋ํด๋ณธ๋ค.
Semantic Segmentation์ FCN (Fully Convolutional Network)๋ฅผ ๊ธฐ์ค์ผ๋ก DeepLab ๊ณ์ด ๋ชจ๋ธ๊ณผ U-Net ๊ณ์ด ๋ชจ๋ธ๋ก ๊ตฌ๋ถ์ง์ ์ ์๋ค.