๐Ÿ’ป/๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด

[์ปดํ“จํ„ฐ ๋น„์ „] Image Segmentation - Clustering

ruhz 2021. 6. 7. 19:02

K-means Clustering

 

๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” K-means ํด๋Ÿฌ์Šคํ„ฐ๋ง์„ ์ด๋ฏธ์ง€๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜์ ์ธ ๊ด€์ ์—์„œ ์‚ดํŽด๋ณด์ž. ๋จผ์ € ๋žœ๋คํ•˜๊ฒŒ ๊ธฐ์ค€์ (centeroid)์„ ๋ช‡ ๊ฐœ ์ •ํ•˜๊ณ , ๋ชจ๋“  ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•˜์—ฌ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ธฐ์ค€์ ์œผ๋กœ ๋ฌถ์–ด ์ค€๋‹ค. ํ•ด๋‹น ๋ฌถ์Œ ์•ˆ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ‰๊ท ๋‚ด์„œ centeroid๋ฅผ ๊ทธ๊ณณ์œผ๋กœ ์˜ฎ๊ธด๋‹ค. ์˜ฎ๊ธด centeroid๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‹ค์‹œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ธฐ์ค€์ ์œผ๋กœ ๋ฌถ์–ด์ค€๋‹ค. ์ด ๊ฒƒ์„ centeroid๊ฐ€ ์›€์ง์ด์ง€ ์•Š์„ ๋•Œ ๊นŒ์ง€ ๋ฐ˜๋ณตํ•œ๋‹ค.

 

 

 

์ด๋ฏธ์ง€ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์—์„œ๋Š” ์ด๋ฏธ์ง€๋ฅผ R, G, B ๋„๋ฉ”์ธ์— ์˜ฎ๊ฒจ๋†“๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์˜ค๋ฅธ์ชฝ ๋ฐ์ดํ„ฐ ๋ถ„ํฌ์—์„œ ์ดˆ๊ธฐ centeroid๋ฅผ ๋ช‡ ๊ฐœ ์ •ํ•œ ๋’ค ์ตœ์ ์˜ centeroid๋ฅผ ์ฐพ์•„๋‚˜๊ฐ„๋‹ค. ์Šค์Šค๋กœ ์ตœ์ ์˜ ๊ฐ’์„ ํ–ฅํ•ด ๊ณ„์†ํ•ด์„œ ์—…๋ฐ์ดํŠธ ํ•ด ๋‚˜๊ฐ€๊ธฐ ๋•Œ๋ฌธ์—, ๋จธ์‹ ๋Ÿฌ๋‹์˜ ๋ฐฉ์‹๊ณผ ๊ฐ™๋‹ค. ๊ฒฐ๊ณผ๋ฅผ ๋ฝ‘์•„๋ณด๋ฉด ์•Œ๊ฒ ์ง€๋งŒ ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์—ญ์‹œ ๊ฒฐ๊ณผ๊ฐ€ ์ฉ ์ข‹์ง€ ์•Š๋‹ค.

 

 

Mean Shift

Mean Shift๋Š” K-means์™€ ๋น„์Šทํ•˜์ง€๋งŒ ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ธ๋‹ค. ๋จผ์ € ์ด๋ฏธ์ง€๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜์ ์ธ ์ฐจ์›์—์„œ ๋™์ž‘ ๋ฐฉ์‹์„ ์‚ดํŽด๋ณด์ž. ์—ฌ๊ธฐ์„œ๋Š” ๋จผ์ € ์ผ์ • ๋ฒ”์œ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ window์— ํฌํ•จ์‹œํ‚จ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์•ˆ์—์„œ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•˜์—ฌ ๋‹ค์Œ ์›€์ง์ผ ์ ์„ ๊ณ„์‚ฐํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•  ๋•Œ, ๊ทธ๋ƒฅ ๋ชจ๋“  ๊ฐ’์„ ๋”ํ•˜๊ณ  ๋‚˜๋ˆ ๋„ ์ข‹์ง€๋งŒ, ๊ฐ€์šฐ์‹œ์•ˆ ์ปค๋„์ฒ˜๋Ÿผ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ€๊นŒ์šด ์ ๋“ค์€ ๋” ๊ฐ•ํ•˜๊ฒŒ, ๊ฑฐ๋ฆฌ๊ฐ€ ๋จผ ์ ๋“ค์€ ๋” ์•ฝํ•˜๊ฒŒ ๋ฐ˜์˜ํ•œ ํ‰๊ท ์„ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ์ด ๊ฒƒ์„ ๊ณ„์† ๋ฐ˜๋ณตํ•˜์—ฌ, ๋” ์ด์ƒ ์›€์ง์ด์ง€ ์•Š๋Š” ์ ์„ ์ฐพ์•„๊ฐ€๋Š” ๊ฒƒ์ด๋‹ค.

 

์—ฌ๋‹ด์ด์ง€๋งŒ Mean Shift๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ด ๊ณผ์ œ๋กœ ๋‚˜์™”์—ˆ๋Š”๋ฐ ๊ต์•ˆ์˜ ํ•ด์„์„ ์ž˜๋ชปํ•ด ํ•ด๋‹น ๋‚ด์šฉ์„ ์˜คํ•ดํ•˜๊ณ  ์žˆ์—ˆ๋‹ค๊ฐ€ ์—‰๋šฑํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ œ์ถœํ–ˆ์—ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋ถˆ์ƒ์‚ฌ๊ฐ€ ์—†์œผ๋ ค๋ฉด ์•„๋ž˜ ๋ฌธ์žฅ๋“ค์„ ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜๊ณ  ๋„˜์–ด๊ฐ€๋„๋ก ํ•˜์ž. Mean Shift๋Š” window๋ฅผ ๊ตฌ์„ฑํ•  ๋•Œ R, G, B ๋ฟ ์•„๋‹ˆ๋ผ x, y ๊นŒ์ง€ ์ด 5๊ฐœ์˜ ๊ฐ’์„ ๊ณ ๋ คํ•œ๋‹ค. ์ด๋ฅผ RGB ๋„๋ฉ”์ธ๊ณผ xy ๋„๋ฉ”์ธ์œผ๋กœ ๋ถ„๋ฆฌํ•ด๋ณด๋„๋ก ํ•˜์ž. ํ”ฝ์…€๋“ค ์ค‘ window์— ๋“ค์–ด์˜ค๋Š” ๊ฐ’๋“ค์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • RGB ๋„๋ฉ”์ธ์—์„œ ํ˜„์žฌ ๊ธฐ์ค€์ ๊ณผ ์ผ์ • ๊ฑฐ๋ฆฌ(hr)์•ˆ์— ๋“ค์–ด์˜จ๋‹ค
  • ๋™์‹œ์— xy ๋„๋ฉ”์ธ์—์„œ ํ˜„์žฌ ๊ธฐ์ค€์ ๊ณผ ์ผ์ • ๊ฑฐ๋ฆฌ(hs)์•ˆ์— ๋“ค์–ด์˜จ๋‹ค.
  • ์ด ๋•Œ hr, hs๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์กฐ์ •ํ•ด์•ผ ํ•˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฐ’์ด๋‹ค!

์ด๋ ‡๊ฒŒ window๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ๋‚˜๋ฉด, ๋“ค์–ด์˜จ ์ ๋“ค์— ๋Œ€ํ•ด์„œ ํ•ด๋‹น ์ˆ˜์‹์„ ๊ณ„์‚ฐํ•ด์ค€๋‹ค.

์™ผ์ชฝ ์ˆ˜์‹์„ ๋ณด๋ฉด, ๋ถ„๋ชจ์—๋Š” ์–ด๋–ค weight ๊ฐ’์˜ ํ•ฉ, ๋ถ„์ž์—๋Š” weight์™€ ํ”ฝ์…€๊ฐ’์„ ๊ณฑํ•œ ํ˜•ํƒœ๋กœ ์ผ์ข…์˜ ํ‰๊ท ์„ ๋‚ด๊ณ  ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ์ด ๋•Œ, k()๋Š” ๊ฐ€์šฐ์‹œ์•ˆ ์ปค๋„์ด๋ฉฐ, h์˜ ๊ฐ’์—๋Š” ์ด์ „์— ์ •ํ–ˆ๋˜ hr, hs์˜ ๊ฐ’์ด ๋“ค์–ด๊ฐ„๋‹ค. RGB ๋„๋ฉ”์ธ์„ ๊ณ ๋ คํ•  ๋• hr,  xy ๋„๋ฉ”์ธ์„ ๊ณ ๋ คํ•  ๋• hs๋ฅผ ํ™œ์šฉํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ์ ์„ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ๋‚˜๋ฉด ํ•ด๋‹น ๊ณผ์ •์„ ๊ณ„์† ๋ฐ˜๋ณตํ•œ๋‹ค. ์ด ๊ณผ์ •์ด ๋ฐ˜๋ณต๋˜๋ฉด ๋‹ค์Œ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ํ”ฝ์…€๋“ค์ด ๋ชจ์ด๋Š” ์ง€์ (basin)๋“ค์ด ์ƒ๊ฒจ๋‚œ๋‹ค.