๐จโ๐ซ ๋ณธ ๋ฆฌ๋ทฐ๋ Kemal Erdem๋์ ๋ธ๋ก๊ทธ์ ๋ณด๊ณ ์์ฑํ ๋ฆฌ๋ทฐ์ ๋๋ค.
๐ Before review
ย ๋ณธ ๊ธ์ ์ฐ๊ฒ ๋ ์ด์ ๋ MASK R-CNN ๋
ผ๋ฌธ์ ์ฝ๋ ์ค RoI์ ๋ํ ๊ธ์ด ๋์ค๋๋ฐ, ์ด ๋ถ๋ถ์ ๋ํด ์ฐพ์๋ณด๋ค ๋๋ฌด๋๋ ์ข์ ๊ธ์ด ์์ด ๋ฆฌ๋ทฐํฉ๋๋ค. ํญ์ CV ๋
ผ๋ฌธ์ ์ฝ๋ค๋ณด๋ฉด ๋
ผ๋ฌธ๋ง์ ์ฐธ๊ณ ํด ์ดํดํ๊ธฐ ์ด๋ ค์ ๋ค์ํ ์๋ฃ๋ฅผ ์ฐพ์๋ณผ ๋๊ฐ ๋๋ถ๋ถ ์
๋๋ค. ๋ํ ๊ฐ์ธ์ ์ธ ์๊ฐ์ผ ์ ์์ง๋ง, ๋
ผ๋ฌธ๋ง์ ์ฝ๊ณ ์ดํดํ๊ธฐ ์ด๋ ค์ด ์ด๋ก ๋ค๋ ๋ง๋ค๊ณ ์๊ฐ๋ฉ๋๋ค..ใ
ย ๋ณธ๋ก ์ผ๋ก ๋ค์ด๊ฐ RoI๋ Fast R-CNN์์ ๋์จ ๊ฐ๋
์
๋๋ค. ๋
ผ๋ฌธ์ ์ฝ์ผ๋ฉด์ ์ด๋์ ๋ ์ดํด๊ฐ ๋์๋ค๊ณ ์๊ฐํ๋๋ฐ, ๋ณธ ๊ธ์ ์ฝ์ผ๋ฉด์ "์ ์ด๋ฐ ์๋ฌธ์ ๊ฐ์ง์ง ๋ชปํ์๊น" ๋ผ๋ ์๊ฐ์ด ๋ค์์ต๋๋ค.
๐ RoI๋ "์๋ณธ ์ด๋ฏธ์ง๋ก๋ถํฐ proposed ๋ region์ด๋ค."๋ผ๊ณ ๋งํ ์ ์์ต๋๋ค. Region of Interest๋ฅผ ์ง์ญํ๋ฉด ๋ง ๊ทธ๋๋ก ํฅ๋ฏธ๋ก์ด ์ง์ญ์ ์ฐพ๋ ๊ฒ์ด๋ผ๊ณ ๋งํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๊ฐ ํ ๋ ค๊ณ ํ๋ task๋ ๋๋ถ๋ถ detection์ด๋ segmentation์ด๊ธฐ ๋๋ฌธ์, ์ด๋ฏธ์ง์์ ํฅ๋ฏธ๋ก์ด๋ถ๋ถ ์ฆ, ๋ฌผ์ฒด๊ฐ ์๋ ๋ถ๋ถ์ ์ฐพ์์ผํฉ๋๋ค.
๐ RoI๋ฅผ ์ฐพ๊ธฐ ์ํด "Fast R-CNN"์์๋ feature map์ ์ถ์ถํฉ๋๋ค.(VGG16์ ์์๋ก ๋ค๋ฉด)
๐ ์์ ์ฌ์ง์์ ๋ณผ ์ ์๋ฏ์ด 512x512x3์ Input์ผ๋ก ๋ฃ๊ณ 16x16x512์ธ feature map๋ฅผ ์ถ์ถํ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. feature map์ ์ฌ์ด์ฆ๋ input์ฌ์ด์ฆ๋ฅผ 32๋ก ๋๋ ๊ฒ์ ๋๋ค. ์ด๋ ์ด๋ฏธ์ง์ ์ ๋ณด๋ฅผ 16x16x512๋ก ์์ถ์์ผฐ๋ค๊ณ ๋งํ ์ ์์ต๋๋ค. ์ฆ, ๊ฐ๊ฐ์ ๊ณ ์์ค์ ์ ๋ณด๋ค์ ๋ด๊ณ ์๋ค๊ณ ๋งํ ์ ์์ต๋๋ค. ### Sample RoIs๐ ์์ ์ฌ์ง์ 4๊ฐ์ RoI๋ค์ ๋ณผ ์ ์์ต๋๋ค. ์ค์ Fast R-CNN์์๋ ์์ฒ๊ฐ์ RoI๊ฐ ์กด์ฌํฉ๋๋ค.
๐ ์ฌ๊ธฐ์ ์ค์ํ ๊ฒ์ RoI๋ค์ bounding box๋ฅผ ์๋ฏธํ๋ ๊ฒ์ด ์๋๋๋ค. ๊ฒ์ผ๋ก๋ ๊ทธ๋ด ์ ์์ง๋ง , ROI๋ ์ถ๊ฐ์ ์ธ processing์ ํ๊ธฐ ์ํด interest๋ฅผ ์ ์ํด์ฃผ๋ ๊ฒ์ ๋๋ค.ํ์ง๋ง ๋๋ถ๋ถ์ ๊ธ์ด๋ ๋ธ๋ก๊ทธ์์ ํธ์์ RoI๋ฅผ ์์ ๊ฐ์ด ๋ณด์ฌ์ฃผ๊ณ ํฉ๋๋ค.
๐ ์ผ๋ฐ์ ์ผ๋ก RoI๋ฅผ ์ฐพ์๋ค๋ฉด, ๊ทธ๊ฒ๋ค feature map์ ๋งคํ ํ ์ ์์ด์ผํฉ๋๋ค.
๐ ๋ชจ๋ RoI๋ ์๋ ์ขํ์ ์ฌ์ด์ฆ๋ก ์ด๋ฃจ์ด์ ธ์์ต๋๋ค. ์ฌ๊ธฐ์๋ถํฐ ์ ๊ฐ ์ด ๊ธ์ ์ฐ๊ฒ๋ ์ด์ ์ค ํ๋์ ๋๋ค.
๐ ์์ ๋ฐ์ด๋ฉ ๋ฐ์ค์ ์ฌ์ด์ฆ๋ 145x200์ด๋ฉฐ, top-left ์ขํ๋ (192,296)์ ๋๋ค. ์ฌ๊ธฐ์ ์๋ฌธ์ด ํ๋ ์๊น๋๋ค. ์ฐ๋ฆฌ์ feature map์ 16x16 ์ด๋ฉด์, 32๋ก ๋๋ ๋จ์ด์ง๋ ์์ ๋๋ค. ํ์ง๋ง ์์ ๊ฒฝ์ฐ์๋ ์์ฐ์๋ก ๋จ์ด์ง์ง ์์ต๋๋ค. ์ด๋ด ๊ฒฝ์ฐ์๋ ์ด๋ป๊ฒ ํด์ผํ ๊น์? ์ ๋ Fast, Faster R-CNN์ ์ฝ์ ๋๋ ์ด๋ฐ ์๋ฌธ์ ๊ฐ์ง์ง ์์์ต๋๋ค. ์ด๋ป๊ฒ ๋ณด๋ฉด ๋น์ฐํ ๊ถ๊ธํด์ผํ๋ ์ง๋ฌธ์ ๋๋ค๋ง..๐ Quantization is a process of constraining an input from a large set of values (like real numbers) to a discrete set (like integers) ๋ผ๊ณ ์ ์ํฉ๋๋ค. ์ฌ์ค MASK R-CNN์์ Quantization๋ผ๋ ๋จ์ด๋ฅผ ์ฒ์ ๋ดค๋๊ฑฐ ๊ฐ์ต๋๋ค.(Fast R-CNN์์๋ ๋ชป๋ดค๋๊ฑธ๋ก ๊ธฐ์ตํฉ๋๋ค๋ง..)
๐ ์์ ๋นจ๊ฐ์ ๋ฐ์ค๊ฐ ๊ธฐ์กด์ RoI ๋ฐ์ค์ ๋๋ค. ์ฌ์ง์์ ๋ณผ ์ ์๋ฏ์ด ๊ฐ๊ฐ์ ๊ฐ์ด ๋๋ ๋จ์ด์ง์ง ์์ต๋๋ค. ๊ทธ๋ ๊ธฐ์ ์์์ ์ ๋ฒ๋ ค ์์ฐ์๋ก ๋ง๋ญ๋๋ค.(6.25 -> 6, 4.53 -> 4) ์์ ์ฃผํฉ์ ๋ถ๋ถ์ด ์์ ๋ ๊ฐ๋ค์ ๋ฒ์์ ๋๋ค. ๐ ๊ฒฐ๊ณผ์ ์ผ๋ก ํ๋์ ๋ถ๋ถ์ ์ ๋ณด๋ฅผ ์๊ฒ๋๊ณ ์ด๋ก์ ๋ถ๋ถ์์ ์๋ก์ด ์ ๋ณด๋ฅผ ์ป๊ฒ๋ฉ๋๋ค. ์ฐ๋ฆฌ๋ ์์ ์ ์ฝ์ผ๋ก ์ธํด์ ์๋์ RoI๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํ์ง ๋ชปํฉ๋๋ค. ์ด๋ฌํ ๋ถ๋ถ์ ํ์ RoIAlign์ด๋ผ๋ ์๋ก์ด ๋ฐฉ๋ฒ๋ก ์ผ๋ก ํด๊ฒฐํฉ๋๋ค.๐ ์ดํ Fast R-CNN์์๋ RoI Pooling์ ์งํํ๊ฒ ๋ฉ๋๋ค. RoI Pooling์ด๋ ๋ง ๊ทธ๋๋ก RoI๋ค์ Poolingํ๋ ๊ฒ์ ๋๋ค. Pooling์ ์งํํ๋ ์ด์ ๋ ์์ ์ฌ์ง๊ณผ ๊ฐ์ด FC layers๋ฅผ ์ํด ๊ณ ์ ๋ ํฌ๊ธฐ์ feature๋ค์ด ํ์ํฉ๋๋ค. ํ์ง๋ง RoI๋ค์ ๊ฐ๊ฐ ๋ค๋ฅธ ์ฌ์ด์ฆ๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ Pooling์ ํตํด์ ๊ฐ์ ์ฌ์ด์ฆ๋ก ๋ฐ๊ฟ์ค๋๋ค.
๐ ์์ ์ฌ์ง๊ณผ ๊ฐ์ด 4x6์ RoI๋ฅผ 3x3์ ์ฌ์ด์ฆ๋ก ๋ฐ๊ฟ์ค์ผํฉ๋๋ค. 4x6์ 3x3์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ธฐ ์ํด์ 1x2 vector๋ฅผ ์ฌ์ฉํด์ผํฉ๋๋ค.(4/3 = 1 x 6/3 = 2) ๊ทธ๋ ๊ฒ ๋๋ค๋ฉด ์์ ์ฌ์ง๊ณผ ๊ฐ์ด ๋ ๋ค์ ๋ง์ง๋ง ํ์ ์ ๋ณด๋ฅผ ์๊ฒ ๋ฉ๋๋ค.๐ ๊ฐ๊ฐ์ ๋ชจ๋ RoI๋ค์ ๋ํด Pooling์ ์งํํ๊ฒ๋๋ค๋ฉด ์์ฒ๊ฐ์ 3x3x512์ feature map๋ค์ด ์ถ์ถ๋ฉ๋๋ค.
๐ ๊ธฐ์กด์ RoI, RoIPooling์ ๊ฒฝ์ฐ์๋ ๋ณด์๋ค ์ถ์ด ์ผ๋ถ ์ ๋ณด๋ฅผ ์์คํ๊ฒ ๋ฉ๋๋ค. ์์ ๊ฐ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด RoIAlign์ด๋ผ๋ ์๋ก์ด ๋ฐฉ๋ฒ๋ก ์ด ๋์ค๊ฒ ๋ฉ๋๋ค.
๐ ์์ ์ฌ์ง์ MASK R-CNN์ testing network์ ๋๋ค. RoI Align์ mask R-CNN์์ ์ ์๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์์์ ์ธ๊ธํ๋ค ์ถ์ด RoI Align ๋ฐฉ๋ฒ์ ์์ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ฌธ์ ์ (์ ๋ณด์ ์์ค)์ ํด๊ฒฐํด์ฃผ๋ ๋ฐฉ์์ ๋๋ค.
๐ MASK R-CNN์ Instance segmentation์ ๊ธฐ๋ฅ์ ์ํํฉ๋๋ค. segmentation์ ํด์ผํ๊ธฐ ๋๋ฌธ์ pixel๊ฐ์ ๊ด๊ณ๊ฐ ๋์ฑ ์ค์์๋ฉ๋๋ค. ๊ทธ๋ ๊ธฐ์ ์ ๋ณด์ ์์ค์ ์์ ๋ RoI Align ๋ฐฉ๋ฒ์ ์ ์ํฉ๋๋ค.
๐ RoI Align๋ quantization์ ํ์ง ์์ต๋๋ค. ์ฆ, RoI ๊ฐ์ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค. ์์์ ์ธ๊ธํ๋ฏ์ด Fast R-CNN์์๋ 2๋ฒ์ quantization์ ๋ฐ์ํฉ๋๋ค. ์ฆ, 2๋ฒ์ ์ ๋ณด์์ค์ด ์ผ์ด๋ฉ๋๋ค. RoI Align quantization์ ํ์ง ์์ผ๋ฉด์, ์ ๋ณด์ ์์ค์ ๋ง์ ์ ์์ต๋๋ค. ๐ RoI์ ๋ฒ์๋ฅผ 3x3 ์ฌ์ด์ฆ์ ๋ง์ถฐ, width, height์ 3๋ฑ๋ถ ํฉ๋๋ค. RoI Align ์ญ์ RoI pooling์ ์งํํฉ๋๋ค(3x3). ์์์ ๋ณผ ์ ์๋ฏ์ด RoI๊ฐ ๊ฐ ์ ์ ์ ํํ ์ผ์นํ์ง ์์ต๋๋ค. ๐ RoI pooling layer๋ฅผ ์ถ์ถํ๊ธฐ ์ํด ๊ฐ๊ฐ์ 4๊ฐ์ sampling points๋ฅผ ์์ฑํฉ๋๋ค. ๐ ๊ฐ๊ฐ์ ์ขํ๋ ์๋์ ๊ฐ์ด ์์ฑ๋ฉ๋๋ค.๐ ์ฐ๋ฆฌ๋ ์ด์ bilinear interpolation์ ์ฌ์ฉํด ๊ฐ๊ฐ์ ๊ฐ์ ์ฐพ์ ์ ์์ต๋๋ค.
๐ ์์ ์ฌ์ง๊ณผ ๊ฐ์ด ์ฒซ๋ฒ์งธ ํฌ์ธํธ ๋ฐ์ค๋ฅผ ๋ณด์๋ฉด, (9.94, 6.50)์ ์ขํ์์ ๊ฐ์ฅ ๊ฐ๊น์ด top-left ๋ฐฉํฅ์ ์ ์ ์ค๊ฐ ์ขํ๋ (9.50, 6.50), bottom-left ๋ฐฉํฅ์ ์ ์ ์ค๊ฐ ์ขํ๋ (9.50, 7.50), ์์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ณด๋ฉด ๊ฐ๊ฐ (10.50, 6.50), (10.50, 7.50) ์ขํ๋ค์ด ๊ฐ์ฅ ๊ฐ๊น์ด ์ขํ์ ๋๋ค. ๐ ์์ ์ขํ๋ค๋ก bilinear interpolation์ ๊ณ์ฐํ๋ฉด ๊ฐ ์ง์ ์ ๊ฐ์ ๊ณ์ฐํ ์ ์์ต๋๋ค. ๐ ๊ฐ์ ๋ฐฉ์์ผ๋ก 4๊ฐ์ ์ ๋ชจ๋ ๊ตฌํ ์ ์์ต๋๋ค. ์ด์ 4๊ฐ์ ๊ฐ์ ๊ฐ์ง๊ณ Max pooling(Avg pooling) ์งํํด 3x3 feature map์ ์์ฑํ ์ ์์ต๋๋ค. ๐ ๋๋จธ์ง๋ ๊ธฐ์กด์ ๋ฐฉ๋ฒ์ด๋ ๋์ผํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก RoI Align๋ quantization ์์ด pooling์ ์งํํ ์ ์์ต๋๋ค. ์ฆ ์ ๋ณด์ ์์ค์์ด Pooling์ ์งํํ ์ ์์ต๋๋ค.