(06๊ฐ•) Computer Vision Applications

210812

์ด์ „์˜ ๋ชจ๋ธ๋“ค์€ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ Segmentaion๊ณผ Detection๋“ค์— ๋Œ€ํ•ด์„œ๋„ ์—ฐ๊ตฌํ–ˆ๋‹ค.

Semantic Segmentation

์ด๋ฏธ์ง€์˜ ๋ชจ๋“  ํ”ฝ์…€์ด ์–ด๋–ค ๋ผ๋ฒจ์— ์†ํ•˜๋Š”์ง€ ์ฐพ๋Š” ๊ฒƒ์ด๋‹ค. Dense Classification

  • ์ž์œจ์ฃผํ–‰ ๋ฌธ์ œ๋“ฑ์˜ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.

Fully Convolutional Network

์ „ํ†ต์ ์ธ CNN์€ ์ด๋ ‡๋‹ค.

Fully convolutional network๋Š” dense layer๊ฐ€ ์—†๋‹ค.

dense layer๋ฅผ ์—†์• ๋Š” ๊ณผ์ •์„ convolutionalization ์ด๋ผ๊ณ  ํ•œ๋‹ค. dense layer๊ฐ€ ์—†์–ด์ง„ ์ž์ฒด๊ฐ€ ์žฅ์ .

ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๋Š” ๋™์ผํ•˜๋‹ค.

  • ์™ผ์ชฝ : 4x4(ํ•„ํ„ฐ) x 16(์ž…๋ ฅ์ฑ„๋„) x 10(์ถœ๋ ฅ์ฑ„๋„)

  • ์˜ค๋ฅธ์ชฝ 4x4(ํ•„ํ„ฐ) x 16(์ž…๋ ฅ์ฑ„๋„) x 10(์ถœ๋ ฅ์ฑ„๋„)

ํŒŒ๋ผ๋ฏธํ„ฐ๋„ ๋‹ฌ๋ผ์ง„ ๊ฒƒ์ด ์—†๋Š”๋ฐ ์™œ ์ด๋ ‡๊ฒŒ ํ• ๊นŒ?

๊ธฐ์กด CNN์€ ๊ฒฐ๊ณผ๋ฅผ 1์ฐจ์›์œผ๋กœ ๋ฑ‰๊ธฐ ๋•Œ๋ฌธ์— ๋‹จ์ˆœํžˆ ๋ถ„๋ฅ˜๋งŒ ํ•  ์ˆ˜ ์žˆ์—ˆ๋Š”๋ฐ, FCN์€ ๊ฒฐ๊ณผ๋ฅผ ์ด๋ฏธ์ง€๋กœ ๋ฑ‰๊ธฐ ๋•Œ๋ฌธ์— ์ž…๋ ฅ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ํžˆํŠธ๋งต์„ ์–ป์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ(๋‚˜๋„ ํ™•์‹คํ•˜๊ฒŒ ์ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค)

๋˜ํ•œ, FCN์€ ์–ด๋–ค ํฌ๊ธฐ์˜ ์ž…๋ ฅ์ด๋ผ๋„ ์ƒ๊ด€์—†์ด ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ถœ๋ ฅ์˜ ํฌ๊ธฐ๊ฐ€ ์ž‘์•„์ง€๊ฒŒ๋œ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋Ÿฌํ•œ ์ถœ๋ ฅ์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆด ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ ๋“ค์ด ํ•„์š”ํ–ˆ๊ณ  ์ด๋Ÿฌํ•œ ๊ธฐ์ˆ ๋“ค์ด ๋“ฑ์žฅํ•˜๊ฒŒ ๋œ๋‹ค

Deconvolution(conv transpose)

convolution์˜ ์—ญ์—ฐ์‚ฐ์„ ํ•ด์ค€๋‹ค. ๊ทธ๋Ÿฌ๋ฉด 30x30์ด 15x15๊ฐ€ ๋œ ๊ฒƒ์„ ๋‹ค์‹œ 30x30์œผ๋กœ ํ•˜๊ฒŒ ํ•ด์ค€๋‹ค. ๊ทผ๋ฐ ์‚ฌ์‹ค ์—ญ์—ฐ์‚ฐ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

  • 3 + 7 = 10 ์ด๊ณ  2 + 8 = 10 ์ด์ง€๋งŒ, 10์„ ๊ฐ€์ง€๊ณ  ์›๋ž˜ ์ˆ˜๊ฐ€ ๋ฌด์—‡์ด์˜€๋Š”์ง€๋Š” ์•Œ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ

๋”ฐ๋ผ์„œ ์—„๋ฐ€ํžˆ ๋งํ•˜๋ฉด ์—ญ์—ฐ์‚ฐ์€ ์•„๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€๋งŒ ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ์ˆซ์ž์™€ ๋„คํŠธ์›Œํฌ์˜ ๊ตฌ์กฐ๋ฅผ ๋ดค์„ ๋•Œ๋Š” ์—ญ์—ฐ์‚ฐ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด ํŒจ๋”ฉ์„ ๋งŽ์ด์ค˜์„œ ์›๋ž˜ ํฌ๊ธฐ๋กœ ๋Œ๋ฆฌ๋Š” ๋ชจ์Šต

Detection

R-CNN

ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค. ์ด๋ฏธ์ง€ ๋‚ด์—์„œ 2์ฒœ๊ฐœ์ •๋„์˜ REGION(Boundix box)์„ ๋ฝ‘์•„๋‚ธ๋‹ค. ๊ฐ๊ฐ์˜ ๋ฝ‘์€ Region์˜ ํฌ๊ธฐ๋ฅผ ํ†ต์ผํ•˜๊ณ  CNN์„ ํ†ตํ•ด ํŠน์ง•์„ ์–ป์€ ๋‹ค์Œ SVM์„ ์‚ฌ์šฉํ•ด์„œ ๋ถ„๋ฅ˜ํ•œ๋‹ค.

SPPNet

Spatial Pyramid Pooling

R-CNN์˜ ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ์ค‘ ํ•˜๋‚˜๋Š” ์ด๋ฏธ์ง€ ์•ˆ์—์„œ ๋ฐ”์šฐ๋‹ ๋ฐ•์Šค๋ฅผ 2์ฒœ๊ฐœ๋ฅผ ๋ฝ‘์œผ๋ฉด ์ด 2์ฒœ๊ฐœ๋ฅผ ๋‹ค CNN์— ๋„ฃ์–ด์•ผ ๋˜๋Š” ๊ฒƒ. ์ด๋ฏธ์ง€ ํ•œ์žฅ์„ ์œ„ํ•ด ๋ชจ๋ธ์„ 2์ฒœ๋ฒˆ ๋Œ๋ ค์•ผํ–ˆ๋‹ค.

SPPNet์˜ ์•„์ด๋””์–ด๋Š” CNN์„ ํ•œ๋ฒˆ๋งŒ ๋Œ๋ฆฌ์ž. ๊ทธ๋ฆฌ๊ณ  ์ด๋ฏธ์ง€ ๋‚ด์—์„œ ์–ป์€ ๋ฐ”์šด๋”ฉ ๋ฐ•์Šค์— ํ•ด๋‹นํ•˜๋Š” ํ”ผ์ฒ˜๋งต์„ ์–ป์ž.

  • R-CNN ์—๋Œ€ํ•ด์„œ ๋นจ๋ผ์กŒ๋‹ค.

Fast R-CNN

SPP์™€ ๋™์ผํ•œ ์ปจ์…‰์„ ๊ฐ€์กŒ๋‹ค. ๋’ท๋‹จ์˜ Neural Network๋ฅผ ํ†ตํ•ด์„œ Boudning box๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค๋Š” ์ฐจ์ด

Faster R-CNN

Bounding box๋ฅผ ๋ฝ‘์•„๋‚ด๋Š” Region Proposal๋„ ํ•™์Šต์„ ํ•˜์ž๋Š” ์•„์ด๋””์–ด. ์™œ๋ƒ๋ฉด ์ด Reigon์„ ๋ฝ‘๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ž„์˜์˜ Region์„ ๋ฝ‘๊ธฐ ๋•Œ๋ฌธ.

Region Proposal Network๋Š” ๋ฝ‘์€ Region์•ˆ์— ๋ฌผ์ฒด๊ฐ€ ์žˆ์„์ง€ ์—†์„์ง€๋ฅผ ํŒ๋‹จํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ ํ•„์š”ํ•œ ๊ฒƒ์ด Anchor box์ด๋‹ค

  • Anchor box๋Š” ๋ฏธ๋ฆฌ ์ •ํ•ด๋†“์€ bounding box์˜ ํฌ๊ธฐ์ด๋‹ค

์—ฌ๊ธฐ์„œ๋„ FCN์ด ํ™œ์šฉ๋œ๋‹ค.

๋„“์ด๊ฐ€ ๊ฐ๊ฐ 128, 256, 512์ธ Bounding Box์˜ ๊ฐ€๋กœ ์„ธ๋กœ ๋น„์œจ์ด 1:1, 1:2, 2:1์ด๋ฏ€๋กœ ์ด 9๊ฐœ์˜ Box๊ฐ€ ์กด์žฌํ•œ๋‹ค.

๋˜, Bounding box์˜ ์ค‘์‹ฌ์  (x, y)์™€ ๊ฐ€๋กœ์™€ ์„ธ๋กœ๊ธธ์ด w, h์˜ 4๊ฐ€์ง€ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

Bounding box๊ฐ€ ์“ธ๋ชจ๊ฐ€ ์žˆ๋Š”์ง€ ์—†๋Š”์ง€์— ๋Œ€ํ•œ Yes or No์˜ 2๊ฐ€์ง€ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๋‹ค

YOLO

์ง€๊ธˆ์€ v5๊นŒ์ง€ ๋‚˜์™”๋Š”๋ฐ, v1์„ ๋‹ค๋ฃฐ ๊ฒƒ์ž„

๊ธฐ์กด ๋ถ„๋ฅ˜๊ธฐ๋“ค๊ณผ ๋‹ค๋ฅธ์ ์€ ์ด๋ฏธ์ง€์˜ Region์„ ์ฐพ๊ณ  ์ด Region์— ํ•ด๋‹นํ•˜๋Š” ํ”ผ์ฒ˜๋งต์„ ๋ฝ‘๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ทธ๋ƒฅ ์ด๋ฏธ์ง€ ํ•œ์žฅ์„ ์ž…๋ ฅํ•˜๋ฉด ๋ฐ”๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ตฌ์กฐ๋ฅผ ๊ฐ€์กŒ๋‹ค

์ด์ „์—๋Š” Region Proposal Network๊ฐ€ ์žˆ์—ˆ๊ณ  ๊ฑฐ๊ธฐ์„œ ๋‚˜์˜ค๋Š” Bounding Box๋ฅผ ๋”ฐ๋กœ ๋ถ„๋ฅ˜ํ–ˆ๋‹ค. YOLO๋Š” ํ•œ๋ฒˆ์— ๋ถ„๋ฅ˜ํ•œ๋‹ค.

YOLO๋Š” ์ด๋ฏธ์ง€๊ฐ€ ๋“ค์–ด์˜ค๋ฉด SxS์˜ ๊ฒฉ์ž๋กœ ์ด๋ฏธ์ง€๋ฅผ ๋‚˜๋ˆ„๊ฒŒ ๋œ๋‹ค. ์ฐพ๊ณ ์ž ํ•˜๋Š” ๋ฌผ์ฒด์˜ ์ค‘์•™์ด ๊ทธ๋ฆฌ๋“œ ์•ˆ์— ๋“ค์–ด๊ฐ€๋ฉด ๊ทธ ๊ทธ๋ฆฌ๋“œ์…€์ด ํ•ด๋‹น ๋ฌผ์ฒด์˜ Bounding box์™€ Class๊นŒ์ง€ ๊ฐ™์ด ์˜ˆ์ธกํ•ด์ฃผ๊ฒŒ๋œ๋‹ค.

์ด์ „์—๋Š” Anchor box๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ ์—ฌ๊ธฐ์„œ๋Š” ์—†๊ณ  ๋‹จ์ง€ Bounding box์˜ ๊ฐœ์ˆ˜๋งŒ์„ ๋ฏธ๋ฆฌ ์ •ํ•ด์ฃผ๊ฒŒ ๋œ๋‹ค. (๋…ผ๋ฌธ์—์„œ๋Š” 5๊ฐœ) ๊ทธ๋Ÿฌ๋ฉด ๋ชจ๋ธ์€ n๊ฐœ์˜ bounding box์˜ (x, y, w, h)๋ฅผ ์ฐพ๊ฒŒ๋œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹ค์ œ๋กœ ์“ธ๋ชจ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๊ฒฐ๊ตญ S*S*(B*N+C) ์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ–๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋ฐ˜ํ™˜๋œ๋‹ค.

  • S*S : ๊ทธ๋ฆฌ๋“œ์˜ ๊ฐœ์ˆ˜

  • B*N : ๋ฐ”์šด๋”ฉ ๋ฐ•์Šค(x, y, w, h, confidence)์™€ ๋ฏธ๋ฆฌ ์ •์˜ํ•œ ๊ฐœ์ˆ˜

  • C : Number of Classes

Last updated

Was this helpful?