[CV] Mask R-CNN & U-Net
2021๋ ๋จธ์ ๋ฌ๋ ์คํฐ๋์์ ์งํํ์๋ 'Mask R-CNN & U-Net' ๋ ผ๋ฌธ ๋ฆฌ๋ทฐ๋ฅผ ์ฌ๊ตฌ์ฑํ ํฌ์คํ ์์ ๋ฏธ๋ฆฌ ์๋ ค๋๋ฆฝ๋๋ค.
introduction
์ปดํจํฐ ๋น์ (Computer Vision, CV) ๋ถ์ผ์ ์ฃผ์ ๊ณผ์ ๋ฅผ ์ดํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ 3๊ฐ์ง๋ก ๋๋์ด์ง๋๋ค.
- Classification
- Object Detection
- Image Segmentation
์ด์ ํฌ์คํ
๊น์ง ๋ค๋ฃจ์๋ Faster R-CNN๊น์ง๋ ์ด์ค 2-stage์ ๊ธฐ์ดํ Classification์ ๋ค์ ๋จ๊ณ์ธ, (ํนํ) 2๋ฒ์งธ ๋จ๊ณ์ธ Object Detection์ ์ํด ๊ณ ์๋ ๋ชจ๋ธ๋ค์ด์์ต๋๋ค.
Mask R-CNN์ 3๋ฒ์งธ ๋จ๊ณ์ธ Image Segmentation์ ์ํํ๊ธฐ ์ํด ๊ณ ์๋ ๋ชจ๋ธ ์
๋๋ค.
์ฌ๊ธฐ์ Segmentation์ด ๋ฌด์ผ ์๋ฏธํ ๊น ๊ฐ์ธ์ ์ผ๋ก ๊ถ๊ธํด์ ์ฐ์ ์ ์ผ๋ก ์ฌ์ ์ ์๋ฏธ๋ฅผ ์ฐพ์๋ดค์ต๋๋ค. ์ฌ์ ์ ์๋ฏธ๋ก '๋ถํ ', '๋ถํ ๋ ๋ถ๋ถ'์ด๋ผ๋ ๋ป์ด์์ต๋๋ค. ์ ๋ ๋ง ๊ทธ๋๋ก ์ด๋ฏธ์ง๋ฅผ ๋ถํ ํด์ ์ฌ์ฉํ๊ฒ ๋ค๊ณ ๋ฏธ๋ฆฌ ์์์ ํด๋ณด๊ณ ๋ด์ฉ์ผ๋ก ๋ค์ด๊ฐ ๋ณด์์ต๋๋ค.
Mask R-CNN
๊ธฐ์กด R-CNN ๋ชจ๋ธ๋ค๊ณผ์ ์ฐจ์ด์
Mask R-CNN์ Faster R-CNN๊ณผ ํฌ๊ฒ ๋ค๋ฅด์ง ์์ ๊ตฌ์กฐ๋ก, ๊ทธ ์ฐจ์ด์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ธฐ์กด Faster R-CNN์ ์ด์ ํฌ์คํ
์์ ์ค๋ช
ํ๋ฏ์ด Fast R-CNN์ RPN(Region Proposal Network) ๋ฅผ ์ถ๊ฐํ ๊ตฌ์กฐ๋ก ์ฒซ ๋ฒ์งธ ์๊ณผ ๊ฐ๋ค๊ณ ๋ณผ ์ ์์ต๋๋ค.
๋ํ Mask R-CNN์ด Faster R-CNN์ผ๋ก๋ถํฐ ๋ฌ๋ผ์ง ์ ์ ๋ ๋ฒ์งธ ์๊ณผ ๊ฐ์ด ๋์ํ ํ ์ ์์ต๋๋ค.
- Fast R-CNN์ Classification, localization(Bounding Box Regression) Branch์ ์๋กญ๊ฒ mask branch๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- RPN์ ์ FPN(Feature Pyramid Network)๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- Image Segmentation์ masking์ ์ํด RoI align์ด RoI Pooling์ ๋์ ํ๊ฒ ๋์์ต๋๋ค.
์ 3๊ฐ์ง๋ฅผ ์ค๋ช
ํ๊ธฐ์ ์์ Mask R-CNN์ ๊ตฌ์กฐ๋ฅผ ์ดํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
Mask R-CNN์ ๊ตฌ์กฐ
์ฌ์ด์ฆ์ input image๊ฐ ์ฃผ์ด์ก์ ๋, Mask R-CNN์ Process๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ณธ ์ฌ๋ผ์ด๋๋ฅผ ํตํด ์ ์ฒด์ ์ธ ๋งฅ๋ฝ๊ณผ ํ๋ฆ, ๊ณผ์ ์ ํ์
ํ๊ณ ๋ค์ชฝ์์ step-by-step์ผ๋ก ์ธ๋ถํํ์ฌ ์ค๋ช
ํ๋๋ก ํ๊ฒ ์ต๋๋ค.
Mask R-CNN: Resize Input Image
Mask R-CNN์์๋ backbone์ผ๋ก ResNet-101์ ์ฌ์ฉํ๋๋ฐ ResNet ๋คํธ์ํฌ์์๋ ์ด๋ฏธ์ง input size๊ฐ 800 ~ 1,024์ผ ๋ ์ฑ๋ฅ์ด ์ข๋ค๊ณ ์๋ ค์ ธ ์์ต๋๋ค.
(VGG๋ 224 * 224๋ก, ์ด๋ VGG๋ ์ฅ์คํผ๋ ์ฐ๊ตฌํ VGG์์ ๋ง๋ VGGNet์ ์๋ฏธํฉ๋๋ค.)
๋ฐ๋ผ์ ์ด๋ฏธ์ง๋ฅผ 800 ~ 1,024์ ๋์ size๋ก ๋ง์ถฐ์ฃผ๋๋ฐ, ์ด๋ bilinear interpolation์ ์ฌ์ฉํ์ฌ resize ํด์ฃผ๊ฒ ๋ฉ๋๋ค.
๊ณผ์ ์ ๋ค์ ์ค๋ช ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ ์ด๋ฏธ์ง๋ฅผ ์ผ์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ก upsampling ํ๋ค๋ฉด ์ ์๋ pixel value๊ฐ ๊ฐ๊ฐ ๋ก ๋์ํ๊ฒ ๋ฉ๋๋ค.
- ์ด๋ ์ด 16๊ฐ ์ค 4๊ฐ์ pixel๋ง ๊ฐ์ด ๋์๋๊ณ ๋๋จธ์ง 12๊ฐ๋ ๊ฐ์ด ์์ง ์ฑ์์ง์ง ์๊ฒ ๋ฉ๋๋ค.
- ์ด๋ฅผ bilinear interpolation์ผ๋ก ๊ฐ์ ์ฑ์์ฃผ๊ฒ ๋ฉ๋๋ค.
- ์ด๋ ๊ฒ ๊ธฐ์กด์ image๋ฅผ 800 ~ 1,024 ์ฌ์ด๋ก resizeํด์ค ํ ๋คํธ์ํฌ์ input size์ธ ๋ก ๋ง์ถ๊ธฐ ์ํด ๋๋จธ์ง ๊ฐ๋ค์ zero padding์ผ๋ก ๊ฐ์ ์ฑ์ ์ฃผ๊ฒ ๋ฉ๋๋ค.
Bilinear interpolation์ ์ฌ๋ฌ interpolation ๊ธฐ๋ฒ ์ค ํ๋๋ก ๋์ ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ผ๋ฐ์ ์ผ๋ก ๋ ์ง์ ์์์ ๋ฐ์ดํฐ ๊ฐ์ด ๊ฐ๊ฐ ์ผ ๋, ์ฌ์ด์ ์์์ ์ง์ ์์์ ๋ฐ์ดํฐ ๊ฐ ๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๊ณ์ฐํ ์ ์์ต๋๋ค.
Mask R-CNN: Backbone-ResNet101
Mask R-CNN์ ๊ณต๋ถํ๋ฉด์, ์ ์๊ฒ ์์ด ๊ฐ์ฅ ๊น๋ค๋ก์ด ๋ถ๋ถ์ ์ด ResNet ๋ถ๋ถ์ด์์ต๋๋ค.
Network ์ค ํ๋๋ก ์๊ฐํ๊ณ ๋๊ธฐ๊ธฐ์๋ ๋ถ์กฑํ ์ ์ด ๋ง์์ ์ต๋ํ ์ฐพ์๋ณด๊ณ ์กฐ์ฌํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์ค๋ช
ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
์ด์ ์ ์ฐ๊ตฌ๋ค๋ก ๋ชจ๋ธ์ layer๊ฐ ๋๋ฌด ๊น์ด์ง์๋ก ์คํ๋ ค ์ฑ๋ฅ์ด ๋จ์ด์ง๋ ํ์์ด ๋ฐ์ํจ์ ์ด์ผ๊ธฐํ์ต๋๋ค. ์ด๋ Gradient vanishing/exploding ๋ฌธ์ ๋๋ฌธ์ ํ์ต์ด ์ ์ด๋ฃจ์ด์ง์ง ์๊ธฐ ๋๋ฌธ์
๋๋ค.
์ด๋ Gradient vanishing์ด๋, layer๊ฐ ๊น์ด์ง์๋ก ๋ฏธ๋ถ์ ์ ์ ๋ง์ด ํ๊ธฐ ๋๋ฌธ์ Back-Propagation์ ํด๋ ์์ผ๋ก layer ์ผ์๋ก ๋ฏธ๋ถ๊ฐ์ด ์์์ ธ ๊ทธ๋งํผ output์ ์ํฅ์ ๋ผ์น๋ weight ์ ๋๊ฐ ์์์ง๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
์ด๋ Over-fitting๊ณผ๋ ๋ค๋ฅธ ๋ฌธ์ ์
๋๋ค. Over-fitting์ ํ์ต๋ฐ์ดํฐ์ ์๋ฒฝํ๊ฒ fitting ์ํจ ํ์ ํ
์คํธ ์ฑ๋ฅ์์๋ ์ ์ข์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์์ ๋ปํฉ๋๋ค. ๊ทธ๋ฌ๋ ์์ ๊ฐ์ ๋ฌธ์ ๋ Degradation ๋ฌธ์ ๋ก training data์๋ ํ์ต์ด ๋์ง ์์์ ๋ปํฉ๋๋ค.
์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ResNet์ ๊ณ ์ํ ๊ฒ์
๋๋ค. ResNet๋ Skip connection์ ์ด์ฉํ Residual Learning์ ํตํด layer๊ฐ ๊น์ด์ง์ ๋ฐ๋ฅธ Gradient Vanishing ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์์ต๋๋ค.
๊ธฐ์กด์ Neural Net์ ํ์ต ๋ชฉ์ ์ input()์ ํ๊ฒ ๊ฐ()์ผ๋ก mappingํ๋ ํจ์ ๋ฅผ ์ฐพ๋ ๊ฒ์ด์์ต๋๋ค.
๋ฐ๋ผ์ ๋ฅผ ์ต์ํํ๋ ๋ฐฉํฅ์ผ๋ก ํ์ต์ ์งํํ๊ฒ ๋ฉ๋๋ค.
์ด๋ ์ด๋ฏธ์ง classification๊ณผ ๊ฐ์ ๋ฌธ์ ์ ๊ฒฝ์ฐ, ์ ๋ํ ํ๊ฒ ๊ฐ ๋ ์ฌ์ค ๋ฅผ ๋๋ณํ๋ ๊ฒ์ผ๋ก ์ ์ ์๋ฏธ๊ฐ ๊ฐ๊ฒ ๋ mapping ํด์ผํฉ๋๋คใ
์ฆ, ๊ฐ์์ง ์ฌ์ง์ pixel ๊ฐ์ด input()๋ก ์ฃผ์ด์ง ๋, ์ด๋ฅผ 2๊ฐ์ label์ค ๊ฐ์์ง๊ฐ 1์ ํด๋นํ๋ค๋ฉด ํ๊ฒ ๊ฐ()๋ฅผ 1๋ก ์ ํด์ ํ์ตํ๋ ๊ฒ์ด ์๋, ๊ฐ์์ง ์ฌ์ง์ pixel ๊ฐ()๋ก ๋ฅผ mapping ํ๋ ๊ฒ ์
๋๋ค.
๋ฐ๋ผ์ ๋คํธ์ํฌ์ ์ถ๋ ฅ๊ฐ์ด $x$๊ฐ ๋๋๋ก $H(x) - x$๋ฅผ ์ต์ํํ๋ ๋ฐฉํฅ์ผ๋ก ํ์ต์ ์งํํฉ๋๋ค.
๋ฅผ ์์ฐจ๋ผ๊ณ ํ๋ฉฐ, ์ด ์์ฐจ๋ฅผ ํ์ตํ๋ ๊ฒ์ Residual learning์ด๋ผ ํฉ๋๋ค.
๊ฒฐ๊ตญ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์, ๋คํธ์ํฌ๋ 0์ด ๋๋๋ก ํ์ต์ํค๊ณ ๋ง์ง๋ง์ ๋ฅผ ๋ํด์ ๊ฐ ๊ฐ ๋๋ก๋ก ํ์ตํ๋ฉด, ๋ฏธ๋ถ์ ํด๋, ์์ฒด๋ ๋ฏธ๋ถ ๊ฐ 1์ ๊ฐ๊ธฐ ๋๋ฌธ์ ๊ฐ layer๋ง๋ค ์ต์ gradient๋ก 1์ ๊ฐ๋๋ก ํ ๊ฒ ์
๋๋ค.
์ด๋ ๊ฒ shortcut connection์ผ๋ก ๋ง๋ block์ identity block์ด๋ผ๊ณ ํ๋๋ฐ์.
๊ทธ๋ฆฌ๊ณ ResNet์ identity block๊ณผ convolution block์ผ๋ก ๊ตฌ์ฑ๋๋๋ฐ ๊ฐ๊ฐ์ ์๋ ์ฌ๋ผ์ด๋ 11๊ณผ ๊ฐ์ต๋๋ค.
๋จ์ํ identity block์ ์ด์ ๊น์ง ์ค๋ช
ํ๋ฏ์ด ๋คํธ์ํฌ์ output $F(x)$์ $x$๋ฅผ ๊ทธ๋๋ก ๋ํ๋ ๊ฒ์ด๊ณ , Convolution block์ $x$ ์ญ์ $1 \times 1$ convolution ์ฐ์ฐ์ ๊ฑฐ์น ํ $F(x)$์ ๋ํด์ฃผ๋ ๊ฒ ์
๋๋ค.
๊ทธ๋ฆฌ๊ณ ResNet์ ์ด ๋๊ฐ์ง block๋ฅผ ๋ค์ ์ฌ๋ผ์ด๋ 12์ ๊ฐ์ด ์์์ ๊ตฌ์ฑํฉ๋๋ค.
Mask R-CNN: FPN(Feature Pyramid Network)
์ด์ ์ Faster R-CNN์์์ ํ๊ณ๋ backbone์ ๊ฒฐ๊ณผ๋ก ๋์จ 1๊ฐ์ feature map์์ RoI๋ฅผ ์์ฑํ๊ณ , classification ๋ฐ bbox regression์ ์งํํ๋ค๋ ์ ์ด์์ต๋๋ค.
ํด๋น feature map์ backbone ๋ชจ๋ธ ์ต์ข
layer์์์ output์ธ๋ฐ, ์ด๋ ๊ฒ layer๋ฅผ ํต๊ณผํ ์๋ก ์์ฃผ ์ค์ํ feature๋ง ๋จ๊ฒ ๋๊ณ ,์ค๊ฐ์ค๊ฐ์ feature๋ค์ ๋ชจ๋ ์์ด๋ฒ๋ฆฌ๊ฒ ๋ฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ต์ข
layer์์ ๋ค์ํ ํฌ๊ธฐ์ object๋ฅผ ๊ฒ์ถํด์ผ ํ๋ฏ๋ก, ์ฌ๋ฌ scale ๊ฐ์ผ๋ก anchor๋ฅผ ์์ฑํ๊ฒ ๋๋ ์ด๋ ๋งค์ฐ ๋นํจ์จ์ ์
๋๋ค.
์ด๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ๋์จ ๋ฐฉ๋ฒ์ด ๋ฐ๋ก **FPN(์ถ์ฝ์ค๋ช )**์ ๋๋ค.
FPN์ ์๋๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ง์ง๋ง layer์ feature map์์ ์ ์ ์ด์ ์ ์ค๊ฐ feature map๋ค์ ๋ํ๋ฉด์ ์ด์ ์ ๋ณด๊น์ง ์ ์งํ ์ ์๋๋ก ํฉ๋๋ค.
์ด๋ ๊ฒ ํจ์ผ๋ก์จ ๋ ์ด์ ์ฌ๋ฌ scale ๊ฐ์ผ๋ก anchor๋ฅผ ์์ฑํ ํ์๊ฐ ์๊ฒ ๋์๊ณ , ๋ชจ๋ ๋์ผํ scale์ anchor๋ฅผ ์์ฑํ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์์ feature map์์๋ ํฐ anchor๋ฅผ ์์ฑํ์ฌ ํฐ object๋ฅผ, ํฐ feature map์์๋ ๋ค์ ์์ anchor๋ฅผ ์์ฑํ์ฌ ์์ object๋ฅผ detectํ ์ ์๋๋ก ์ค๊ณ๋์์ต๋๋ค.
๋ง์ง๋ง layer์์์ feature map์์ ์ด์ feature map๋ฅผ ๋ํ๋ ๊ฒ์ upsampling์ ํตํ์ฌ ์ด๋ฃจ์ด์ง๊ฒ ๋ฉ๋๋ค.
์ด ๊ณผ์ ์ ์์ธํ ์ดํด๋ณด๋ฉด,
๋จผ์ 2๋ฐฐ๋ก upsampling์ ํ ํ, ์ด์ layer์ feature map์ Fully convolution ์ฐ์ฐ์ ํตํด filter ๊ฐฏ์๋ฅผ ๋๊ฐ์ด ๋ง์ถฐ์ค ํ ๋ํจ์ผ๋ก์จ ์๋ก์ด feature map์ ์์ฑํ๊ฒ ๋ฉ๋๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก ResNest์ ํตํด C1, C2, C3, C4, C5 feature map์ ์์ฑํ๊ฒ ๋๋๋ฐ, C1์ ์ฌ์ฉํ์ง ์๊ณ C5๋ถํฐ P5, P4, P3, P2๋ฅผ ์์ฑํ๊ณ P5์์ max pooling์ ํตํด P6๋ฅผ ์ถ๊ฐ๋ก ์์ฑํ๊ฒ ๋ฉ๋๋ค.
์ต์ข
์ ์ผ๋ก P2, P3, P4, P5, P6 ์ด๋ ๊ฒ 5๊ฐ์ feature map์ด ์์ฑ๋๋ ๊ฒ์
๋๋ค.
์ถ๊ฐ์ ์ผ๋ก C1์ ์ฌ์ฉํ์ง ์๋ ์ด์ ๋ ํน๋ณํ ์ด์ ๊ฐ ์์ด์๋ผ๊ธฐ๋ณด๋ค๋ C1์ raw image์์ conv์ ํ ๋จ๊ณ๋ง ๊ฑฐ์น ์ํ์ด๊ธฐ ๋๋ฌธ์ ์ฑ๋ฅ์ ํฐ ์ํฅ์ ์ฃผ์ง ์์์์ด์ง ์์๊น๋ผ๋ ์๊ฐ์ด ๋ญ๋๋ค.
๋ํ ํ๋ผ๋ฏธํฐ ๊ฐ์์ ์ฑ๋ฅ ๊ฐ์ trade-off๋ฅผ ์๊ฐํ์ ๋ C1์ ๋นผ๊ณ ๋๋จธ์ง๋ง ์ด์ฉํ๋ ๊ฒ์ด ์คํ๋ ค ๋ ์ข์๊ธฐ ๋๋ฌธ์ผ๊ฑฐ๋ผ ์๊ฐํฉ๋๋ค.
์์์ ์ค๋ช ํ ๋ถ๋ถ์ ๋ค์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- P2 ~ P5์ ๊ฒฝ์ฐ :
RPN์ ๋ณด๋ด๊ธฐ ์ ์ convolution ์ฐ์ฐ์ ๊ฑฐ์น๊ฒ ๋ฉ๋๋ค. P2~P5๋ up-sampling๊ณผ ์ด์ feature map์ ๋ํจ์ผ๋ก์จ feature data๊ฐ ์กฐ๊ธ ๋ง๊ฐ์ก์ ์ ์๊ธฐ์ ์ฐ์ฐ์ ํ๋ฒ ๋ ์งํํด์ฃผ๋ ๊ฒ ์ ๋๋ค. - P6์ ๊ฒฝ์ฐ :
P5์์ max-pooling์ ํ ๊ฒฐ๊ณผ์ด๋ฏ๋ก ์ฐ์ฐ์ ํ์ง ์๊ณ RPN์ ๊ทธ๋๋ก ์ ๋ฌํ๊ฒ ๋ฉ๋๋ค.
Mask R-CNN: RPN
RPN์ ์ด์ ํฌ์คํ
R-CNN ๋
ผ๋ฌธ ๋ฆฌ๋ทฐ์์ ์ค๋ช
์ ํ์์ฃ ?!
์๋ ์ฌ๋ผ์ด๋ 16์ Faster R-CNN์ ์๋๊ณผ์ ์ ๋ํ๋ธ ๊ทธ๋ฆผ์
๋๋ค.
RPN์ Faster R-CNN๊ณผ ๋น๊ตํ์ ๋ ์์ฑํ๋ anchor ๊ฐ์์ ์ฐจ์ด๋ง ์กด์ฌํฉ๋๋ค.
RPN ์๋๊ณผ์ ์ FPN์ ํตํด ์์ฑ๋ P2, P3, P4, P5, P6์ ๊ฐ๊ฐ RPN ๋ชจ๋ธ์ ์ ๋ฌํ๊ฒ ๋๊ณ , Faster R-CNN๊ณผ ๋ฌ๋ฆฌ ์ด์ ๊ฐ feature map์์ 1๊ฐ scale์ anchor๋ฅผ ์์ฑํ๋ฏ๋ก, ๊ฒฐ๊ตญ ๊ฐ pyramid feature map๋ง๋ค (scale) 1๊ฐ x (ratio) 3๊ฐ = 3๊ฐ์ anchor๋ฅผ ์์ฑํ๊ฒ ๋ฉ๋๋ค.
RPN์ ํตํด output์ผ๋ก classification ๊ฐ, bbox regression ๊ฐ์ด ๋์ค๋๋ฐ, ์ด๋ bbox regression ๊ฐ์ delta ๊ฐ ์
๋๋ค.
์๋ ์ฌ๋ผ์ด๋ 17์์์ t๊ฐ๋ค, ์ฆ delta๊ฐ์ output์ผ๋ก ๋ฐ๊ฒ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ด delta ๊ฐ์ anchor ์ ๋ณด๋ฅผ ์ฐ์ฐํด์ ์๋ ์ด๋ฏธ์ง์ ๋์ํ๋ anchor bounding bos ์ขํ๊ฐ์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ฒ ๋๋ ๊ฒ ์
๋๋ค.
Mask R-CNN: Non-max-supppression
์๋ ์ด๋ฏธ์ง์ anchor ์ขํ๋ฅผ ๋์์ํจ ํ์๋ ๊ฐ๊ฐ normalized coordinate์ผ๋ก ๋์์ํต๋๋ค.
์ด๋ fpn์์ ์ด๋ฏธ ๊ฐ๊ธฐ ๋ค๋ฅธ feature map ํฌ๊ธฐ๋ฅผ ๊ฐ๊ณ ์๊ธฐ์ ๋ชจ๋ ํต์ผ๋๊ฒ ์ ๊ท ์ขํ๊ณ๋ก ์ด๋์ํค๋ ๊ฒ์
๋๋ค.
์ด๋ ๊ฒ ์์ฒ ๊ฐ์ anchor box๊ฐ ์์ฑ๋๋ฉด NMS ์๊ณ ๋ฆฌ์ฆ์ ํตํด anchor์ ๊ฐ์๋ฅผ ์ค์ด๊ฒ ๋ฉ๋๋ค.
์๋ ์๋ ์ฌ๋ผ์ด๋ 18์ ๋ณด๋ฉฐ ๊ฐ์ด ๋ด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.
๊ฐ object๋ง๋ค ๋์๋๋ anchor๊ฐ ์์ญ ๊ฐ ์กด์ฌํ๋๋ฐ ์ด๋ ๊ฐ์ฅ classification score๊ฐ ๋์ anchor๋ฅผ ์ ์ธํ๊ณ ์ฃผ์์ ๋ค๋ฅธ anchor๋ค์ ๋ชจ๋ ์ง์ฐ๋ ๊ฒ์
๋๋ค.
NMS ์๊ณ ๋ฆฌ์ฆ์ anchor bbox๋ค์ score ์์ผ๋ก ์ ๋ ฌ์ํจ ํ score๊ฐ ๋์ bbox๋ถํฐ ๋ค๋ฅธ bbox์ IoU๋ฅผ ๊ณ์ฐํฉ๋๋ค.
์ด๋ IoU๊ฐ ํด๋น bbox์ 0.7์ด ๋์ด๊ฐ๋ฉด ๋ bbox๋ ๋์ผ object๋ฅผ detectํ ๊ฒ์ด๋ผ ๊ฐ์ฃผํ์ฌ score๊ฐ ๋ ๋ฎ์ bbox๋ ์ง์ฐ๋ ์์ผ๋ก ๋์์ ํฉ๋๋ค.
์ต์ข
์ ์ผ๋ก ๊ฐ ๊ฐ์ฒด๋ง๋ค score๊ฐ ๊ฐ์ฅ ํฐ box๋ง ๋จ๊ฒ ๋๊ณ , ๋๋จธ์ง box๋ ์ ๊ฑฐํ๊ฒ ๋ฉ๋๋ค.
Mask R-CNN: RoI align
๊ธฐ์กด์ Faster R-CNN์์ RoI pooling์ object detection์ ์ํ ๋ชจ๋ธ์ด์๊ธฐ์ ์ ํํ ์์น ์ ๋ณด๋ฅผ ๋ด๋ ๊ฒ์ด ์ค์ํ์ง ์์์ต๋๋ค.
๋ฐ๋ผ์ ์ฌ๋ผ์ด๋ 20์ ๊ฐ์ด ์ธ์ ํฝ์
๋ก box๋ฅผ ์ด๋์ํจ ํ pooling์ ์งํํ์ต๋๋ค.
์ด๋ ๊ฒ RoI๊ฐ ์์์ ์ขํ๋ฅผ ๊ฐ์ง๋ฉด ์ขํ๋ฅผ ๋ฐ์ฌ๋ฆผํ๋ ์์ผ๋ก ์ด๋์ํจ ํ pooling์ ํ์ต๋๋ค.
์ด๋ ๊ฒ ๋๋ฉด input image์ ์์น์ ๋ณด๊ฐ ์๊ณก๋๊ธฐ ๋๋ฌธ์ segmentation์์๋ ๋ฌธ์ ๋ก ์์ฉํ๊ฒ ๋ฉ๋๋ค.
๋ฐ๋ผ์ Bilinear interpolation์ ์ด์ฉํด์ ์์น์ ๋ณด๋ฅผ ๋ด๋ RoI align์ ์ด์ฉํฉ๋๋ค.
(Bilinear interpolation์ ์์ ์ฌ๋ผ์ด๋ 8์์ ์ด์ผ๊ธฐํ์์ต๋๋ค. :) )
Mask R-CNN: Mask branch
Class, box branch๋ ๊ณต๊ฐ ์ ๋ณด๊ฐ ํ์ ์๊ธฐ ๋๋ฌธ์ FC layer๋ฅผ ์ฌ์ฉํด์ (channels 1,1) vector๋ก ๋ณํ๋ฉ๋๋ค.
ํ์ง๋ง Mask branch๋ ๊ณต๊ฐ ์ ๋ณด๋ฅผ ์ถ์ถํด์ผ ํฉ๋๋ค. ๋ฐ๋ผ์ convolution์ ์ฌ์ฉํ์ฌ pixel-to-pixel ์ ๋ณด๋ฅผ ์ถ์ถํฉ๋๋ค.
์ฌ๊ธฐ์ pixel-to-pixel ์ ๋ณด๋, class์ ๋ฐ๋ผ ๋ถํ ๋ ์ด๋ฏธ์ง ์กฐ๊ฐ์ด๋ผ ์๊ฐํ๋ฉด ์ข์ ๋ฏ ํฉ๋๋ค.
Mask branch๋ FCN์ ์ฌ์ฉํ์ฌ ๊ฐ RoI์ ๋ํด $m \times m$ ํฌ๊ธฐ์ $K$๊ฐ mask๋ฅผ ์์ธกํฉ๋๋ค.(์ด๋ ๋ class ์๋ฅผ ์๋ฏธํฉ๋๋ค.)
FC layer๋ฅผ ์ฌ์ฉํ์ง ์๋ ์ด์ ๋ ๊ณต๊ฐ ์ ๋ณด๋ฅผ ํ์ฉํ๊ธฐ ์ํจ์
๋๋ค. ๋ฐ๋ผ์ mask๋ ์ด๋ฏธ์ง ๋ด ๊ฐ์ฒด์ ๋ํ ๊ณต๊ฐ ์ ๋ณด๋ฅผ ํจ๊ณผ์ ์ผ๋ก encode ํ๋ ๊ฒ์ด ๊ฐ๋ฅํฉ๋๋ค.
Mask R-CNN ์์ฝ
Mask R-CNN์ ์ผ๋ฐ์ ์ผ๋ก detection task๋ณด๋ค๋ instance segmentation task์์ ์ฃผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
Faster R-CNN์ผ๋ก ์ฐพ์ RoI์์ FCN์ ์ด์ฉํ์ฌ Segmentationํ์๋ ์์ด๋์ด์์ ์์๋๊ฒ ๋์์ต๋๋ค.
์ด๋ฒ ํฌ์คํ
์ ํตํด ๋์ ์์์ ๊ตฌ์กฐ๋ฅผ ๋น๋กฏํด ์ด์ ๋ชจ๋ธ๊ณผ์ ์ฐจ์ด์ ์ ์ดํด๋ณด์์ต๋๋ค.
U-Net
U-Net์ด๋?
๋ค์ ๋
ผ๋ฌธ์ธ U-Net์ ๋ํด ์ด์ผ๊ธฐํด๋ณด๊ฒ ์ต๋๋ค.
U์ ๋ชจ์์ผ๋ก ์๊ธด U-Net์ ์๋ฃ ์ด๋ฏธ์ง ํน์ฑ์ ์ ์ ์์ ๋ฐ์ดํฐ๋ก๋ ์ ํํ Segmentation(๋ถํ )์ด ๊ฐ๋ฅํฉ๋๋ค.
U-Net์ด ๊ฐ์ ํ ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์๋๋ฅผ ํฅ์์์ผฐ์ต๋๋ค.
- Context ์ธ์๊ณผ localization ๊ฐ์ trade-off ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์์ต๋๋ค.
์ฌ๊ธฐ์ context์ trade-off๋ ๊ธฐ์กด์ ์กด์ฌํ๋ ๊ณผ์ ์ ๋ฌธ์ ์ ์ด์์ต๋๋ค.
context๋, ์๋ก ์ด์ํ ์ด๋ฏธ์ง ํฝ์
๊ฐ์ ๊ด๊ณ๋ฅผ ์๋ฏธํฉ๋๋ค. ์ฆ, ์ด๋ฏธ์ง์ ์ผ๋ถ๋ฅผ ๋ณด๊ณ ์ ๋ฐ์ ์ธ ์ด๋ฏธ์ง์ context๋ฅผ ํ์
ํ๋ ๋งฅ๋ฝ์ผ๋ก ๋ณด์๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๋ํ trade-off๋, ์ง๋ ํ์ต ์๊ณ ๋ฆฌ์ฆ์ด ํธ๋ ์ด๋ ์
์ ๋ฒ์๋ฅผ ๋์ด ์ง๋์น๊ฒ ์ผ๋ฐํํ๋ ๊ฒ์ ์๋ฐฉํ๊ธฐ ์ํด ๋ ์ข
๋ฅ์ ์ค์ฐจ๋ฅผ ์ต์ํ ํ ๋ ๊ฒช๋ ๋ฌธ์ ๋ฅผ ๋งํฉ๋๋ค.
๋์ ๋ฒ์์ ์ด๋ฏธ์ง๋ฅผ ํ๊บผ๋ฒ์ ์ธ์ํ๋ฉด ์ ๋ฐ์ ์ธ context๋ฅผ ํ์
ํ๊ธฐ์ ์ฉ์ดํฉ๋๋ค. ๊ทธ๋ฌ๋ localization์ ์ ๋๋ก ์ํํ์ง ๋ชปํด ์ด๋ค ํฝ์
์ด ์ด๋ค ๋ ์ด๋ธ์ธ์ง ์ธ๋ฐํ๊ฒ ์ธ์ํ์ง ๋ชปํ๊ฒ ๋ฉ๋๋ค.
๋ฐ๋๋ก ๋ฒ์๋ฅผ ์ขํ๋ฉด ์ธ๋ฐํ localization์ด ๊ฐ๋ฅํ์ง๋ง context ์ธ์๋ฅ ์ด ์ ํ๋๋ ๋ฌธ์ ์ ์ด ๋ฐ์ํฉ๋๋ค.
์ด๋ฌํ ๋ฌธ์ ์ ๋ค์ ๊ฐ์ ํ ๋ชจ๋ธ์ด ๋ฐ๋ก U-Net์
๋๋ค.
์ด๋ฌํ ๋๊ฐ์ง ๋ฌธ์ ์ ์ ๋ค์์ ๋ฐฉ๋ฒ์ ํตํด ํด๊ฒฐํ์์ต๋๋ค.
์๋ ์ ํ์ ๋ฌธ์ : ๊ธฐ์กด์ sliding window ๋ฐฉ์์ด ์๋, patch ํ์ ๋ฐฉ์์ ์ฌ์ฉํ์์ต๋๋ค.trade-off ๋ฌธ์ : Contracting path์์๋ ์ด๋ฏธ์ง์ context๋ฅผ ํฌ์ฐฉํ๊ณ , Expanding path์์๋ feature map์ upsamplingํ ๋ค, ์ด๋ฅผ contracting path์์ ํฌ์ฐฉํ (feature map์)context์ ๊ฒฐํฉํ์ฌ localization์ ์ ํ๋๋ฅผ ๋์์ต๋๋ค.
Structure of U-Net
U๋ฅผ ๋ฎ์ ๋ชจ๋ธ์ ๊ตฌ์กฐ๋ ํฌ๊ฒ 3๊ฐ์ง๋ก ๋๋ ์ ์์ต๋๋ค.
- ์์ถ ๊ฒฝ๋ก(Contracting Path) : ์ ์ง์ ์ผ๋ก ๋์ ๋ฒ์์ ์ด๋ฏธ์ง ํฝ์ ์ ๋ณด๋ฉฐ ์๋ฏธ์ ๋ณด(context information)์ ์ถ์ถ
- ํ์ฅ ๊ฒฝ๋ก(Expanding Path) : ์๋ฏธ ์ ๋ณด๋ฅผ ํฝ์ ์์น์ ๋ณด์ ๊ฒฐํฉ(localization)ํ์ฌ ๊ฐ ํฝ์ ๋ง๋ค ์ด๋ค ๊ฐ์ฒด์ ์ํ๋์ง ๊ตฌ๋ถ
- ์ ํ ๊ตฌ๊ฐ(Bottle Neck) : ์์ถ ๊ฒฝ๋ก์์ ํ์ฅ ๊ฒฝ๋ก๋ก ์ ํ
๊ฐ๋ตํ ๋ชจ๋ธ์ ์๋์ ์ดํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ชจ๋ธ์ input์ ์ด๋ฏธ์ง์ ํฝ์
๋ณ RGB๋ฐ์ดํฐ์ด๊ณ , ๋ชจ๋ธ์ output์ ์ด๋ฏธ์ง์ ๊ฐ ํฝ์
๋ณ ๊ฐ์ฒด ๊ตฌ๋ถ ์ ๋ณด(class)์
๋๋ค.
Convolution ์ฐ์ฐ๊ณผ์ ์์ ํจ๋ฉ(padding)์ ์ฌ์ฉํ์ง ์์ผ๋ฏ๋ก ๋ชจ๋ธ์ output size๋ input size๋ณด๋ค ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, (RGB)ํฌ๊ธฐ์ ์ด๋ฏธ์ง๋ฅผ input์ผ๋ก ์ฌ์ฉํ๋ฉด output์ผ๋ก (class) ์ด๋ฏธ์ง๊ฐ ์์ฑ๋๊ฒ ๋ฉ๋๋ค.
๋ค์์ผ๋ก ๊ฐ ๋จ๊ณ์ ๊ตฌ์กฐ ๋ฐ ๊ตฌ์ฑ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
U-Net: ์์ถ ๊ฒฝ๋ก (Contracting Path)
๋จผ์ ์์ถ ๊ฒฝ๋ก์ ๋๋ค.
์์ถ๊ฒฝ๋ก์์ ์๋ ์ฌ๋ผ์ด๋ 27๊ณผ ๊ฐ์ Down-sampling ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ ํน์ง ๋งต(feature map)์ ์์ฑํ๊ฒ ๋ฉ๋๋ค.
์์ถ ๊ฒฝ๋ก๋ ์ฃผ๋ณ ํฝ์
๋ค์ ์ฐธ์กฐํ๋ ๋ฒ์๋ฅผ ๋ํ๊ฐ๋ฉฐ ์ด๋ฏธ์ง๋ก๋ถํฐ Contextual ์ ๋ณด๋ฅผ ์ถ์ถํ๋ ์ญํ ์ ์ํํฉ๋๋ค. convolution์ ์ํํ ๋, ํจ๋ฉ์ ํ์ง ์์ผ๋ฏ๋ก, ํน์ง๋งต(feature map)์ ํฌ๊ธฐ๊ฐ ๊ฐ์ํ๊ฒ ๋ฉ๋๋ค.
๋ํ Down-sampling ํ ๋๋ง๋ค ์ฑ๋(Channel)์ ์๋ฅผ 2๋ฐฐ์ฉ ์ฆ๊ฐ์ํค๋ฉด์ ์งํํ๋๋ฐ, ์ฒ์ input channel(1)์ 64๊ฐ๋ก ์ฆ๊ฐ์ํค๋ ๋ถ๋ถ์ ์ ์ธํ๋ฉด, ์ฑ๋์ ๋ก Down-sampling์ ์งํํ ๋๋ง๋ค ์ฆ๊ฐํ๊ฒ ๋ฉ๋๋ค.
๋
ผ๋ฌธ์์๋ batch-normalization์ด ์ธ๊ธ๋์ง ์์์ผ๋ ๊ตฌํ์ฒด ๋ฐ ๋ค์์ ๋ฆฌ๋ทฐ์์ batch-normalization์ ์ฌ์ฉํ๋ ๊ฒ์ ํ์ธํ๋ค๊ณ ํ๋๋ฐ์.
Batch-normalization์ ๋ฐฐ์น ์ ๊ตํ๋ก ๊ฐ ๋ ์ด์ด๋ง๋ค ์ ๊ทํํ๋ ๋ ์ด์ด๋ฅผ ๋์ด ๋ณํ๋ ๋ถํฌ๊ฐ ๋์ค์ง ์๋๋ก ์กฐ์ ํ๋ ๊ฒ์ด๋ผ๋๋ฐ์.. ์.. ์ด ์ ์ ์ ๋ ์กฐ๊ธ ๋ ์ฐพ์์ ๊ณต๋ถํด์ผํ ๊ฒ ๊ฐ์ต๋๋ค.
U-Net: ์ ํ ๊ตฌ๊ฐ(Bottle Neck)
๋ค์์ผ๋ก ์ ํ ๊ตฌ๊ฐ์
๋๋ค.
์์ถ ๊ฒฝ๋ก์์ ํ์ฅ ๊ฒฝ๋ก๋ก ์ ํ๋๋ ๊ตฌ๊ฐ์ผ๋ก ์ฌ๋ผ์ด๋ 28์์ ๋ณผ ์ ์๋ฏ์ด ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
๋ง์ง๋ง์ ์ ์ฉ๋ Dropout layer๋ ๋ชจ๋ธ์ ์ผ๋ฐํํ๊ณ ๋
ธ์ด์ฆ๋ฅผ ๊ฒฌ๊ณ ํ๊ฒ(robust) ๋ง๋๋ ์ฅ์น์
๋๋ค.
U-Net: ํ์ฅ ๊ฒฝ๋ก(Expanding Path)
๋ง์ง๋ง์ผ๋ก ํ์ฅ ๊ฒฝ๋ก์
๋๋ค.
ํ์ฅ ๊ฒฝ๋ก๋ ์ฌ๋ผ์ด๋ 29์์ ๋ณผ ์ ์๋ฏ์ด, (2)skip connection์ ํตํด ์์ถ ๊ฒฝ๋ก์์ ์์ฑ๋ Contextual ์ ๋ณด์ ์์น ์ ๋ณด๋ฅผ ๊ฒฐํฉํ๋ ์ญํ ์ ํฉ๋๋ค.
๋์ผํ level์์ ์์ถ ๊ฒฝ๋ก์ ํน์ง ๋งต๊ณผ ํ์ฅ ๊ฒฝ๋ก์ ํน์ง ๋งต์ ํฌ๊ธฐ๊ฐ ๋ค๋ฅธ ์ด์ ๋ ์์ถ ๊ฒฝ๋ก ์ฌ๋ผ์ด๋์์ ์ค๋ช
ํ๋ฏ์ด ์ฌ๋ฌ ๋ฒ์ ํจ๋ฉ์ด ์๋ convolution layer๋ฅผ ์ง๋๋ฉด์ ํน์ง ๋งต์ ํฌ๊ธฐ๊ฐ ์ค์ด๋ค์๊ธฐ ๋๋ฌธ์
๋๋ค.
ํ์ฅ ๊ฒฝ๋ก์ ๋ง์ง๋ง์ class์ ๊ฐฏ์๋งํผ ํํฐ๋ฅผ ๊ฐ๊ณ ์๋ Convolution Layer๊ฐ ์์ต๋๋ค. Convolution Layer๋ฅผ ํต๊ณผํ ํ ๊ฐ ํฝ์
์ด ์ด๋ค class์ ํด๋นํ๋์ง์ ๋ํ ์ ๋ณด๋ฅผ ๋ํ๋ด๋ 3์ฐจ์()๋ฒกํฐ๊ฐ ์์ฑ๋ฉ๋๋ค.
U-Net: ํ์ต ๋ฐฉ๋ฒ
๋ค์์ U-Net ๋ชจ๋ธ์ ํ์ต ๋ฐฉ๋ฒ์
๋๋ค.
๋ณธ ๋
ผ๋ฌธ์์๋ ๋ค์ํ ํ์ต ์ฅ์น๋ค์ ํตํด ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํฅ์์์ผฐ์ต๋๋ค.
- Overlap-tile strategy : ํฐ ์ด๋ฏธ์ง๋ฅผ ๊ฒน์น๋ ๋ถ๋ถ์ด ์๋๋ก ์ผ์ ํฌ๊ธฐ๋ก ๋๋๊ณ ๋ชจ๋ธ์ input์ผ๋ก ํ์ฉ
- Mirroring Extrapolate : ์ด๋ฏธ์ง์ ๊ฒฝ๊ณ(Border) ๋ถ๋ถ์ ๊ฑฐ์ธ์ด ๋ฐ์ฌ๋ ๊ฒ์ฒ๋ผ ํ์ฅํ์ฌ input์ผ๋ก ํ์ฉ
- Weight Loss : ๋ชจ๋ธ์ด ๊ฐ์ฒด ๊ฐ ๊ฒฝ๊ณ๋ฅผ ๊ตฌ๋ถํ ์ ์๋๋ก Weight Loss๋ฅผ ๊ตฌ์ฑ ๋ฐ ํ์ต
- Data Augmentation : ์ ์ ๋ฐ์ดํฐ๋ก ๋ชจ๋ธ์ ์ ํ์ตํ ์ ์๋๋ก ๋ฐ์ดํฐ ์ฆ๊ฐ ๋ฐฉ๋ฒ ํ์ฉ
๊ฐ ํ์ต ์ฅ์น๋ค์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค.
Overlap-tile strategy
์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ํฐ ๊ฒฝ์ฐ, ์ด๋ฏธ์ง๋ฅผ ์๋ฅธ ํ ๊ฐ ์ด๋ฏธ์ง๋ฅผ ํด๋นํ๋ Segmentation์ ์งํํด์ผ ํฉ๋๋ค.
U-Net์ ๊ฒฝ์ฐ, input๊ณผ output์ ์ด๋ฏธ์ง ํฌ๊ธฐ๊ฐ ๋ค๋ฆ
๋๋ค. ์ฌ๋ผ์ด๋ 31 ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด, ํ๋์ ์์ญ์ input์ผ๋ก ๋ฃ์ผ๋ฉด ๋
ธ๋์ ์์ญ์ด output์ผ๋ก ์ถ์ถ๋ฉ๋๋ค.
๋์ผํ๊ฒ ์ด๋ก์ ์์ญ์ Segmentationํ๊ธฐ ์ํด์๋ ๋นจ๊ฐ์ ์์ญ์ ๋ชจ๋ธ์ input์ผ๋ก ์ฌ์ฉํ์ฌ์ผ ํฉ๋๋ค.
์ฆ, ๊ฒน์น๋ ๋ถ๋ถ์ด ์กด์ฌํ๋๋ก ์ด๋ฏธ์ง๋ฅผ ์๋ฅด๊ณ , Segmentationํ๊ธฐ ๋๋ฌธ์ ๋
ผ๋ฌธ์์๋ Overlap-tile strategy๋ผ๊ณ ์ง์นญํ์์ต๋๋ค.
Mirroring Extrapolate
์ด๋ฏธ์ง์ ๊ฒฝ๊ณ๋ถ๋ถ์ ์์ธกํ ๋, Padding์ ๋ฃ์ด ํ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ์ผ๋ฐ์ ์
๋๋ค.
๋ณธ ๋
ผ๋ฌธ์์๋ ์ด๋ฏธ์ง ๊ฒฝ๊ณ์ ์์นํ ์ด๋ฏธ์ง๋ฅผ ๋ณต์ฌํ๊ณ , ์ข์ฐ๋ฐ์ ์ ํตํด Mirror ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ํ ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋ถ์ด๋ ๋ฐฉ๋ฒ์ ํตํด input์ผ๋ก ์ฌ์ฉํ์์ต๋๋ค.
๋ณธ ๋
ผ๋ฌธ์ ์คํ ๋ถ์ผ์ธ biomedical์์๋ ์ธํฌ๊ฐ ์ฃผ๋ก ๋ฑ์ฅํ๊ณ , ์ธํฌ๋ ์ํ ์ข์ฐ ๋์นญ ๊ตฌ๋๋ฅผ ์ด๋ฃจ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๊ธฐ ๋๋ฌธ์ Mirroring ์ ๋ต์ ์ฌ์ฉํ์ ๊ฒ์ด๋ผ ์ถ์ธก๋ฉ๋๋ค.
Weight Loss
๋ชจ๋ธ์ ์ฌ๋ผ์ด๋ 33 ์ ๊ทธ๋ฆผ์ฒ๋ผ ์์ ๊ฒฝ๊ณ๋ฅผ ๋ถ๋ฆฌํ ์ ์๋๋ก ํ์ต๋์ด์ผ ํฉ๋๋ค.
๋ฐ๋ผ์ ๋
ผ๋ฌธ์์๋ ๊ฐ ํฝ์
์ด ๊ฒฝ๊ณ์ ์ผ๋ง๋ ๊ฐ๊น์ด์ง์ ๋ฐ๋ฅธ Weight-Map์ ๋น๋กํ๊ฒ ์ฆ๊ฐ์ํด์ผ๋ก์จ ๊ฒฝ๊ณ๋ฅผ ์ ํ์ตํ๋๋ก ์ค๊ณํ์์ต๋๋ค.
๋ ํฝ์
์ ๊ฒฝ๊ณ์ ๊ฑฐ๋ฆฌ๊ฐ ๊ฐ๊น์ฐ๋ฉด ํฐ ๊ฐ์ ๊ฐ๊ฒ ๋๋ฏ๋ก ํด๋น ํฝ์
์ Loss ๋น์ค์ด ์ปค์ง๊ฒ ๋ฉ๋๋ค.
์ฆ, ํ์ต ์ ๊ฒฝ๊ณ์ ํด๋นํ๋ ํฝ์
์ ์ ํ์ตํ๊ฒ ๋๋ ๊ฒ์
๋๋ค.
์ฌ๋ผ์ด๋ 35์ ๊ทธ๋ฆผ์ ์ด๋ฏธ์ง์ ํฝ์
์์น์ ๋ฐ๋ฅธ Weight ๋ฅผ ์๊ฐํํ ๊ฒ์
๋๋ค.
๋ ๊ฐ์ฒด์ ๊ฒฝ๊ณ ๋ถ๋ถ์์ ํฐ ๊ฐ์ ๊ฐ๋ ๊ฒ์ ํ์ธํฉ๋๋ค.
๊ฐ์ฒด ๊ฐ ๊ฒฝ๊ณ๊ฐ ์ ์ฒด ํฝ์
์ ์ฐจ์งํ๋ ๋น์ค์ ๋งค์ฐ ์์ต๋๋ค. ๋ฐ๋ผ์ Weight loss๋ฅผ ์ด์ฉํ์ง ์์ ๊ฒฝ์ฐ ๊ฒฝ๊ณ๊ฐ ์ ํ์ต๋์ง ์์ ์ฌ๋ฌ ๊ฐ์ ๊ฐ์ฒด๊ฐ ํ ๊ฐ์ ๊ฐ์ฒด๋ก ํ์๋ ๊ฐ๋ฅ์ฑ์ด ๋์ ๋ณด์
๋๋ค.
Data Augmentation
๋ฐ์ดํฐ์ ์์ด ์ ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ์ ์ฆ๊ฐ์ ํตํด ๋ชจ๋ธ์ด Noise์ ๊ฐ๊ฑดํ๋๋ก ํ์ต์ํค๊ฒ ๋ฉ๋๋ค.
Data Augmentation์ด๋, ์๋์ ๋ฐ์ดํฐ๋ฅผ ๋ถํ๋ ค์ ๋ ์ข์ ์ฑ๋ฅ์ ๋ง๋ ๋ค๋ ๋ป์ผ๋ก์จ, ๋ํ์ ์ธ ์ผ์ด์ค๊ฐ VGG Model์์ ๋ง์ด ์ฌ์ฉ๋๊ณ ๋ฒค์น๋งํน ํ์์ต๋๋ค.
Data Augmentation์ด ์ค์ํ๋ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- Preprocessing & Augmentation์ ํ๋ฉด ๋๋ถ๋ถ ์ฑ๋ฅ์ด ์ข์์ง๋ค.
- ์๋ณธ์ ์ถ๊ฐ๋๋ ๊ฐ๋ ์์ ๋ฐ๋ผ, ์ฑ๋ฅ ์ ํ๊ฐ ๋ฐ์ํ์ง ์๋๋ค.
- ์ฝ๊ณ ํจํด์ด ์ ํด์ ธ ์๋ค.
๊ธฐ๋ณธ์ ์ธ ์
- ์ข์ฐ ๋ฐ์
- ์ด๋ฏธ์ง ์๋ฅด๊ธฐ
- ๋ฐ๊ธฐ ์กฐ์
Data Augmentation์์ ์ค์ํ๊ฒ ์ฌ์ฉ๋ ๊ฒ์ ํฌ๊ฒ 2๊ฐ์ง๋ก ํ์ ๋ฉ๋๋ค.
- Elastic Deformation
- ์ ์ ์์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ง๊ณ ํจ๊ณผ์ ์ผ๋ก ํ์ตํ๊ธฐ ์ํด ์ด ๋ฐฉ์์ ์ฌ์ฉ
- ํฐ์ ์กฐ์ง ๋ฑ์ ์ค์ง์ ์ธ ๋ณํ๊ณผ ์ ์ฌ
- Weighted Cross Entropy + Data Augmentation
- ๋ง์ cell(์ธํฌ)์ Segmentation ํด์ผํ๋ ๋ฌธ์ ์์์ ๋์ ๊ณผ์ ๋ ๊ฐ์ ํด๋์ค๊ฐ ์๋ก ์ธ์ ํด ์๋ ์ผ์ด์ค
์ฌ๋ผ์ด๋ 38์ a์ฒ๋ผ cell์ด ์ธ์ ํด ์์ผ๋ฉด, ๊ฐ cell๊ณผ ๋ฐฐ๊ฒฝ์ ๊ตฌ๋ถํ๋ ๊ฒ์ ์ฝ์ง๋ง, cell ๊ฐ๊ฐ์ ์๋ก ๊ตฌ๋ถ ํ๋ ๊ฒ(๋
ผ๋ฌธ์์๋ instance segmentation์ด๋ผ ํํ)์ ์ด๋ ต๊ฒ ๋ฉ๋๋ค.
๊ทธ๋์ ๋ณธ ๋
ผ๋ฌธ์์๋ ๊ฐ instance์ ํ
๋๋ฆฌ์ ํ
๋๋ฆฌ ์ฌ์ด๊ฐ ๋ฐ๋์ ๋ฐฐ๊ฒฝ์ด ๋๋๋ก ์ฒ๋ฆฌํ์๋ค๊ณ ์์ ๋์ด ์์ต๋๋ค.
์ฆ, 2๊ฐ์ ceel์ด ๋ถ์ด์๋ ๊ฒฝ์ฐ๋ผ๊ณ ํ๋๋ผ๋, ๊ทธ ๋ ์ฌ์ด์๋ ๋ฐ๋์ ๋ฐฐ๊ฒฝ์ผ๋ก ์ธ์๋์ด์ผ ํ ํ์ ๋ง๋ค๊ฒ ๋ค๋ ์๋ฏธ์
๋๋ค.
U-Net ์ ๋ฆฌ
U-Net์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
U-Net์ FCNs๋ณด๋ค ํ์ฅ๋ ๊ฐ๋
์ Upsamling๊ณผ Skip Atchitecture๋ฅผ ์ ์ฉํ ๋ชจ๋ธ์ ์ ์ํฉ๋๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก U-Net์ ๊ตฌ์กฐ๋ ์์ฃผ ์ ์ ์์ ํ์ต ๋ฐ์ดํฐ๋ง์ผ๋ก Data Augmentation์ ํ์ฉํ์ฌ ์ฌ๋ฌ Biomedical Image Segmentation ๋ฌธ์ ์์ ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ์์ต๋๋ค.
PS. ์ถ๊ฐ ๋ฌธ์์ฌํญ ๋ฐ ์ง๋ฌธ์ ํ์ํฉ๋๋ค. ๊ทธ๋ฅผ ํตํด ์ ๋ ๋ ์ฑ์ฅํ ์ ์์ํ ๋๊น์. ๊ธด ๊ธ ์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
