๐Ÿ“˜ Programming/OpenCV

[์˜์ƒ ์ฒ˜๋ฆฌ] ๋ฏธ๋ถ„์„ ์ด์šฉํ•œ ์—ฃ์ง€(Edge) ๊ฒ€์ถœ

ํ•œ์ฝ”๋”ฉ 2020. 12. 29. 23:39
728x90
728x90

1์ฐจ ๋ฏธ๋ถ„์„ ์ด์šฉํ•œ ์—ฃ์ง€ ๊ฒ€์ถœ

 

์ด๋Ÿฐ ์—ฃ์ง€๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์€ ๋ฏธ๋ถ„ ์—ฐ์‚ฐ์„ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

โ€‹

์•„๋ž˜ ๊ทธ๋ฆผ์€ ์˜์ƒ์˜ ๋ฐ๊ธฐ ๋ณ€ํ™”์™€ ๋ฏธ๋ถ„ ๊ฐ’ ๋ณ€ํ™”๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋ฆผ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ฆผ (b)๋ฅผ ๋ณด๋ฉด ๋ช…์•”์˜ ๋ณ€ํ™”๋ฅผ ๋ณด์—ฌ์ฃผ๋Š”๋ฐ, ๋ณผ๋ก ํŠ€์–ด๋‚˜์˜จ ๋ถ€๋ถ„์ด ๋ฐ์€ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.

๊ทธ๋ฆผ (c)๋Š” ์˜์ƒ์˜ ๋ช…์•” ๋ณ€ํ™”์— ๋Œ€ํ•œ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ฏธ๋ถ„ํ•œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ํŠ€์–ด๋‚˜์˜จ ๋ถ€๋ถ„์ด ์—ฃ์ง€์ž…๋‹ˆ๋‹ค.

โ€‹

์ด๋ ‡๊ฒŒ ๋ช…์•”๋„ ๋ณ€ํ™”๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋ž˜ํ”„๋ฅผ ์ปท-๋ทฐ(Cut-View)๋ผ ํ•ฉ๋‹ˆ๋‹ค.

2์ฐจ์› ์˜์ƒ์„ 1์ฐจ์›์œผ๋กœ ๋งŒ๋“  ๊ทธ๋ž˜ํ”„์ž…๋‹ˆ๋‹ค.

โ€‹

โ€‹

๋ฏธ๋ถ„์„ ํ•  ๋•Œ, ์–ด๋Š ๋ฐฉํ–ฅ์œผ๋กœ ๋ฏธ๋ถ„์„ ํ•˜๋Š”์ง€์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

โ€‹

๋ฏธ๋ถ„์„ ํ•˜๋ฉด ์ ˆ๋Œ€ ๊ฐ’๊ณผ ์ œ๊ณฑ๊ทผ ์ค‘ ํŽธ์˜์„ฑ ์œ„ํ•ด ์ ˆ๋Œ€๊ฐ’์ด ์ฃผ๋กœ ์ด์šฉ๋ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ถ„ ๊ฒฐ๊ณผ ๊ฐ•์กฐํ•˜๋ฉด ๋ธ”๋ก ๋‚ด์˜ ์ตœ๋Œ€, ์ตœ์†Œ ๊ฐ’์˜ ์ฐจ์ด๋ฅผ ์—์ง€๋กœ ํ•ฉ๋‹ˆ๋‹ค.

โ€‹

์ขŒํ‘œ (x, y)์—์„œ ๊ฐ ๋ฐฉํ–ฅ์œผ๋กœ์˜ ํŽธ๋ฏธ๋ถ„ ๊ณต์‹์ž…๋‹ˆ๋‹ค.

๋””์ง€ํ„ธ ๋ฐ์ดํ„ฐ์˜ ๋ฏธ๋ถ„์€ ์ด์›ƒ ๋ฐ์ดํ„ฐ์™€์˜ ์ฐจ์ด ๊ฐ’์œผ๋กœ ํ‘œํ˜„๋˜๋ฏ€๋กœ, ๋””์ง€ํ„ธ ์˜์ƒ์˜ ๋ฏธ๋ถ„์€ ๊ฐ ๋ฐฉํ–ฅ์˜ ๋ณ€ํ™”์œจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. Hr์€ ํ–‰ ๊ฒ€์ถœ๊ธฐ์ด๊ณ , Hc๋Š” ์—ด ๊ฒ€์ถœ๊ธฐ์ž…๋‹ˆ๋‹ค.

โ€‹

์ด ๋‘ ๊ฒ€์ถœ๊ธฐ๋ฅผ ํ•ฉ์ณ์„œ ์˜์ƒ์˜ ์ „์ฒด ๋ณ€ํ™” ๋ถ„์˜ ํฌ๊ธฐ๋ฅผ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€‹

์—ฃ์ง€ ๊ฒ€์ถœ์„ ์œ„ํ•œ 1์ฐจ ๋ฏธ๋ถ„ ์—ฐ์‚ฐ์„ ์˜์—ญ์ฒ˜๋ฆฌ ๊ธฐ๋ฒ•์˜ ํšŒ์„  ์ฒ˜๋ฆฌ๋กœ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด

ํ–‰ ๊ฒ€์ถœ๊ธฐ์™€ ์—ด ๊ฒ€์ถœ๊ธฐ๋ฅผ ํšŒ์„  ๋งˆ์Šคํฌ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

โ€‹

์ด ํŽธ๋ฏธ๋ถ„ ์‹์—์„œ ์ œ์‹œ๋œ ์ด์›ƒ ๋ฐ์ดํ„ฐ์™€์˜ ์ฐจ์ด๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ํšŒ์„  ๋งˆ์Šคํฌ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ์–ป์€ 1์ฐจ ๋ฏธ๋ถ„ ํšŒ์„  ๋งˆ์Šคํฌ๋Š” ์ด๋™๊ณผ ์ฐจ๋ถ„์˜ ํšŒ์„  ๋งˆ์Šคํฌ์™€ ํ˜•ํƒœ๊ฐ€ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์Šคํฌ์˜ ํฌ๊ธฐ๊ฐ€ ํด์ˆ˜๋ก ์ƒ์„ธํ•œ ์—ฃ์ง€ ๊ฒ€์ถœ์ด ์–ด๋ ต๊ณ , ์ž‘์œผ๋ฉด ์žก์Œ์— ๋ฏผ๊ฐํ•˜๋ฉฐ, ํšŒ์„  ๋งˆ์Šคํฌ์˜ ํ•ฉ์€ 0์ž…๋‹ˆ๋‹ค.


1์ฐจ ๋ฏธ๋ถ„ ํšŒ์„  ๋งˆ์Šคํฌ ์ข…๋ฅ˜

1์ฐจ ๋ฏธ๋ถ„ ํšŒ์„  ๋งˆ์Šคํฌ์˜ ์ข…๋ฅ˜๋Š” ๋‹ค์–‘ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๊ฐ ํšŒ์„  ๋งˆ์Šคํฌ๋Š” ๊ณ ์œ ํ•œ ํŠน์ง•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒŒ๋‹ค๊ฐ€, ์ด ๋งˆ์Šคํฌ๋Š” ํ–‰ ๊ฒ€์ถœ ๋งˆ์Šคํฌ์™€ ์—ด ๊ฒ€์ถœ ๋งˆ์Šคํฌ๋ฅผ ๊ฐ๊ฐ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ, ์„œ๋กœ ๊ฐ’์ด ๋Œ€์นญ์ž…๋‹ˆ๋‹ค.

โ€‹

โ€‹

1) ๋กœ๋ฒ„์ธ  ๋งˆ์Šคํฌ (Roberts)

์žฅ์ 

- ํฌ๊ธฐ๊ฐ€ ์ž‘์•„ ์—ฐ์‚ฐ์ด ์ ์œผ๋ฏ€๋กœ, ๋น ๋ฅธ ์†๋„๋กœ ๋™์ž‘

- ์ฃผ๋ณ€๊ณผ ๊ด€๊ณ„์—†์ด ๊ฒฝ๊ณ„๊ฐ€ ํ™•์‹คํ•œ ์—ฃ์ง€ ์ถ”์ถœ

โ€‹

๋‹จ์ 

- ๋Œ์ถœ๋œ ๊ฐ’์„ ํ‰๊ท ํ•  ์ˆ˜ ์—†์Œ

- ์žก์Œ์— ๋ฏผ๊ฐ

โ€‹

โ€‹

2) ํ”„๋ฆฌ์œ— ๋งˆ์Šคํฌ (Prewitt)

์žฅ์ 

- ๋Œ์ถœ๋œ ๊ฐ’์„ ์ž˜ ํ‰๊ท ํ™”

โ€‹

๋‹จ์ 

- ๋Œ€๊ฐ์„ ๋ณด๋‹ค ์ˆ˜ํ‰๊ณผ ์ˆ˜์ง์— ๋†“์ธ ์—ฃ์ง€์— ๋ฏผ๊ฐ ( ๊ฐ’์ด ์ผ๋ ฌ๋กœ ๋‚˜์—ด๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ )

โ€‹

โ€‹

3) ์†Œ๋ฒจ ๋งˆ์Šคํฌ (Sobel)

์žฅ์ 

- ๋Œ์ถœ๋œ ๊ฐ’์„ ์ž˜ ํ‰๊ท ํ™”

- ๋ชจ๋“  ๋ฐฉํ–ฅ์˜ ์—ฃ์ง€ ๊ฒ€์ถœ ๊ฐ€๋Šฅ

- ์žก์Œ์— ๊ฐ•ํ•จ

โ€‹

๋‹จ์ 

- ๋Œ€๊ฐ์„  ๋ฐฉํ–ฅ์— ๋†“์ธ ์—ฃ์ง€์— ๋ฏผ๊ฐ

 


2์ฐจ ๋ฏธ๋ถ„์„ ์ด์šฉํ•œ ์—ฃ์ง€ ๊ฒ€์ถœ

์•„๋ž˜๋Š” ์ž„์˜์˜ ์ด์‚ฐ ํ•จ์ˆ˜ f(x)์—์„œ์˜ 1์ฐจ ๋ฏธ๋ถ„๊ณผ 2์ฐจ ๋ฏธ๋ถ„ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.

โ€‹

1์ฐจ ๋ฏธ๋ถ„์„ ์ด์šฉํ•œ ์—ฃ์ง€ ๊ฒ€์ถœ์€ ์—ฃ์ง€๊ฐ€ ์žˆ๋Š” ์˜์—ญ์„ ์ง€๋‚  ๋•Œ ๋ฏผ๊ฐํ•˜๊ฒŒ ๋ฐ˜์‘ํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

2์ฐจ ๋ฏธ๋ถ„์„ ํ†ตํ•ด 1์ฐจ ๋ฏธ๋ถ„์˜ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

โ€‹

์•„๋ž˜๋Š” 1์ฐจ ๋ฏธ๋ถ„๊ณผ 2์ฐจ ๋ฏธ๋ถ„ ๊ฒ€์ถœ๊ธฐ์˜ ๋น„๊ต์ž…๋‹ˆ๋‹ค.

โ€‹

๋ฐ๊ธฐ๊ฐ€ ์„œ์„œํžˆ ๋ณ€ํ•˜๋Š” ๊ณณ์—์„œ๋Š” ๋ฐ˜์‘์ด ๋‘”ํ™”๋˜๊ธฐ ๋•Œ๋ฌธ์—, ์—ฃ์ง€ ์ค‘์‹ฌ๋งŒ ํ‘œ์‹œํ•˜๊ฑฐ๋‚˜ ์•„์˜ˆ ๋ฐ˜์‘์„ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

โ€‹

2์ฐจ ๋ฏธ๋ถ„์„ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์€ ์ ๊ณผ ๋‚˜์œ ์ ์ด ๋ฌด์—‡์ด ์žˆ์„๊นŒ์š”?

โ€‹

์žฅ์ 

- ๊ฒ€์ถœ๋œ ์—ฃ์ง€๋ฅผ ๋Š๊ฑฐ๋‚˜ ํ•˜์ง€ ์•Š๊ณ  ์—ฐ๊ฒฐ๋œ ํ๊ณก์„ ์„ ํ˜•์„ฑ

โ€‹

๋‹จ์ 

- ๊ณ ๋ฆฝ๋œ ์žก์Œ์— ๋ฏผ๊ฐ

- ์œค๊ณฝ์˜ ๊ฐ•๋„๋งŒ ๊ฒ€์ถœํ•˜๋ฉฐ ๋ฐฉํ–ฅ์€ ๊ตฌํ•˜์ง€ ๋ชปํ•จ

โ€‹

2์ฐจ ๋ฏธ๋ถ„ ์—ฐ์‚ฐ์€ ์—ฃ์ง€ ๋ถ€๋ถ„์—์„œ ๋ถ€ํ˜ธ๊ฐ€ ๋ฐ”๋€Œ๋Š” ์˜ ๊ต์ฐจ(Zero Crossing)์˜ ํŠน์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ ๊ต์ฐจ๋Š” 0์„ ์ง€๋‚˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฆ‰, high์—์„œ low๋กœ ๊ฐ€๋Š”๋ฐ ์ค‘๊ฐ„์— ๋ถ•๋œฌ ๊ตฌ๊ฐ„์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ตฌ๊ฐ„์ด ๋ณ€๊ณก์ ์—์„œ ๋ฐฉํ–ฅ์„ฑ์„ ๊ฐ–๊ณ ์žˆ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

 


2์ฐจ ๋ฏธ๋ถ„ ์—ฃ์ง€ ๊ฒ€์ถœ๊ธฐ - ๋ผํ”Œ๋ผ์‹œ์•ˆ(Laplacian)

๋ผํ”Œ๋ผ์‹œ์•ˆ ์—ฐ์‚ฐ์ž๋Š” ๋Œ€ํ‘œ์ ์ธ 2์ฐจ ๋ฏธ๋ถ„ ์—ฐ์‚ฐ์ž์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  ๋ฐฉํ–ฅ์˜ ์—ฃ์ง€๋ฅผ ๊ฐ•์กฐํ•˜๋ฉฐ ๋‹ค์Œ ์‹์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€‹

1์ฐจ ๋ฏธ๋ถ„์˜ ํšŒ์„  ๋งˆ์Šคํฌ์—๋Š” ํ–‰๊ณผ ์—ด ๋ฐฉํ–ฅ์˜ ํšŒ์„  ๋งˆ์Šคํฌ๊ฐ€ ์ด 2๊ฐœ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ, 2์ฐจ ๋ฏธ๋ถ„์˜ ๋ผํ”Œ๋ผ์‹œ์•ˆ ํšŒ์„  ๋งˆ์Šคํฌ์—๋Š” ํ–‰๊ณผ ์—ด ๋ฐฉํ–ฅ์ด ํ•ฉ์ณ์ ธ 1๊ฐœ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” ๋ผํ”Œ๋ผ์‹œ์•ˆ ํšŒ์„  ๋งˆ์Šคํฌ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค. ์ดํ•ฉ์ด 0์ด๋„ค์š”. ๊ฒŒ๋‹ค๊ฐ€, b์™€ c๋Š” ๋ฐ˜์ „ ๊ด€๊ณ„์ž…๋‹ˆ๋‹ค.


์ปฌ๋Ÿฌ ์˜์ƒ์—์„œ์˜ ์—ฃ์ง€ ๊ฒ€์ถœ

RGB ์ปฌ๋กœ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” R, G, B ๊ฐ๊ฐ์—์„œ ๊ฒ€์ถœ์„ ์œ„ํ•œ ํšŒ์„ ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฒ€์ถœ๋œ ์—ฃ์ง€๋ฅผ ๋‹ค์‹œ ํ•ฉํ•ด์„œ ์ปฌ๋Ÿฌ ์˜์ƒ์˜ ์—ฃ์ง€๋ฅผ ์–ป๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” ๊ฒ€์ถœ๋œ ๊ฐ ์„ฑ๋ถ„์˜ ์—ฃ์ง€๋ฅผ ํ•ฉ์น˜๋Š” ๊ณต์‹์ž…๋‹ˆ๋‹ค.

๋งŒ์•ฝ, HSI ์ปฌ๋Ÿฌ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ RGB ์ปฌ๋กœ ๋ชจ๋ธ์„ HSI ์ปฌ๋กœ ๋ชจ๋ธ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋ช…๋„ ๊ฐ’ I ์—์„œ๋งŒ ํšŒ์„ ์„ ์ ์šฉํ•œ ๋’ค, RGB ์ปฌ๋กœ ๋ชจ๋ธ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์ปฌ๋Ÿฌ ์˜์ƒ์˜ ์—ฃ์ง€๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•