[Computer Vision/OpenCV] 15. Segmentation
ยท
๐Ÿฆ„AI/Computer Vision
์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” image segmatation task์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ์ •๋ฆฌ๋ฅผ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค.์ด๋ฏธ์ง€ segmatation์ด ๋ฌด์—‡์ด๊ณ , ์–ด๋–ค ๊ธฐ๋ฒ•๋“ค์ด ์‚ฌ์šฉ๋˜๋Š”์ง€ ์ดˆ์ ์„ ๋งž์ถ”์–ด ์ž‘์„ฑํ•˜๋ ค ํ•œ๋‹ค. 1. Image segmentation์ด๋ฏธ์ง€ segmentation์€ ์ด๋ฏธ์ง€๋ฅผ ์˜๋ฏธ์žˆ๋Š” ์˜์—ญ(segments)๋กœ ๋ถ„ํ• ํ•˜๋Š” ์ž‘์—…์„ ๋งํ•œ๋‹ค.์ด๋ฏธ์ง€๋ฅผ ๊ฒน์น˜์ง€ ์•Š๋Š”, ์œ ์‚ฌํ•œ ์˜๋ฏธ์˜ region๋“ค๋กœ ๋‚˜๋ˆˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.๊ฐ์ฒด ์ธ์‹์ด๋‚˜, ์žฅ๋ช… ์ดํ•ด, ์˜๋ฃŒ ์˜์ƒ ๋ถ„์„, ๊ทธ๋ฆฌ๊ณ  ๋น„์ „ ์‹œ์Šคํ…œ์ด ๋ฌผ๋ฆฌ์ ์ธ ์˜์—ญ์œผ๋กœ ํ™•์žฅํ•˜๋Š” ๋ฐ์— ๋งค์šฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค. ์ด ์ค‘์—์„œ๋„ Color segmentaio์€ ์ด๋ฏธ์ง€์˜ ์ƒ‰์ƒ ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ์œ ์‚ฌํ•œ ์ƒ‰์„ ๊ฐ€์ง„ ํ”ฝ์…€๋“ค ๋ผ๋ฆฌ ๊ทธ๋ฃนํ™” ํ•˜์—ฌ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜ ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. segmentation์„ ํ•˜๋Š”..
[Computer Vision/OpenCV] 14. Image Denoising
ยท
๐Ÿฆ„AI/Computer Vision
์˜ค๋Š˜ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋Œ€ํ‘œ์ ์ธ Degradation model ์ธ salt and pepper ์™€ gaussian noise๋ฅผ ์—†์• ๋Š” denoising๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๊ณ  ์ฝ”๋“œ ์‹ค์Šต์„ ํ•œ๋‹ค. 1. Salt & Pepper NoiseSalt and Pepper noise๋Š” ๋ Œ๋คํ•œ ์œ„์น˜์— ์ƒ์„ฑ๋˜๋Š” ์  ํ˜•ํƒœ์˜ ๋…ธ์ด์ฆˆ์ด๋‹ค.intensity ๊ฐ€ 255 ๋„๋Š” 0์ธ ํ”ฝ์…€์ด ์ƒ์„ฑ๋˜๋Š”๋ฐ, ์ด๋Š” ์ฃผ๋กœ ์„ผ์„œ์˜ ์˜ค๋ฅ˜๋‚˜ ์ „์†ก ์ค‘์— ์ƒ๊ธด ์—ฌ๋Ÿฌ ๋ฌธ์ œ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•œ๋‹ค. ๊ทธ๋Ÿผ ์ด ๋…ธ์ด์ฆˆ๋Š” ์–ด๋–ป๊ฒŒ denoisingํ•  ์ˆ˜ ์žˆ์„๊นŒ? 1.1. Low-pass Filter์ด ๋…ธ์ด์ฆˆ์˜ ๊ฒฝ์šฐ  low pass filter๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ณ ์ฃผํŒŒ ์žก์Œ์„ ์ œ๊ฑฐํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ denoising ํ•  ์ˆ˜ ์žˆ๋‹ค.์˜ˆ๋ฅผ ๋“ค๋ฉด, Uniform Averaging Filte..
[Computer Vision/OpenCV] 13. Image Noise & Degradation
ยท
๐Ÿฆ„AI/Computer Vision
์ด ํฌ์ŠคํŒ…์—์„œ๋Š” Image Degradation๊ณผ Image Noise์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณธ๋‹ค. 1. Image Degradation TypeImage Restoration(๋ณต์›)์˜ ๋ชฉํ‘œ๋Š” ์ด๋ฏธ์ง€์˜ degradation(์†์ƒ)์„ ์ค„์ด๋Š” ๊ฒƒ ์ด๋‹ค.์ข‹์€ ์ด๋ฏธ์ง€ ๋ณต์›์„ ์œ„ํ•ด์„œ๋Š” ์ด๋ฏธ์ง€์˜ ์†์ƒ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ์ด๋ฏธ์ง€ ์†์ƒ์˜ ์œ ํ˜•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.๋…ธ์ด์ฆˆ์ด๋ฏธ์ง€์— ๋ฌด์ž‘์œ„ ๊ฐ’์ด ์ถ”๊ฐ€๋˜์–ด์„œ ์ด๋ฏธ์ง€์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์™œ๊ณก์‹œํ‚ค๋Š” ํ˜„์ƒ์„ ๋…ธ์ด์ฆˆ๋ผ๊ณ  ํ•œ๋‹ค.์ด๋ฏธ์ง€ ์„ผ์„œ, ์ „์†ก๊ณผ์ • ์ค‘ ์†์ƒ, ์กฐ๋ช… ๋“ฑ ๋‹ค์–‘ํ•œ ์›์ธ์— ์˜ํ•ด ๋ฐœ์ƒํ•œ๋‹ค.๋Œ€ํ‘œ์ ์œผ๋กœ ๊ฐ€์šฐ์‹œ์•ˆ ๋…ธ์ด์ฆˆ, Salt&Pepper ๋…ธ์ด์ฆˆ, ํฌ์•„์†ก ๋…ธ์ด์ฆˆ ๋“ฑ์ด ์žˆ๋‹ค.Out of focus Blur๋ Œ์ฆˆ์˜ ์ดˆ์ ์ด ์ •ํ™•ํ•˜์ง€ ์•Š์„ ๋•Œ ๋ฐœ์ƒํ•œ๋‹ค.๋ Œ์ฆˆ๊ฐ€ ๊ฐ€์ •ํ•œ ์ดˆ์  ๊ฑฐ๋ฆฌ์™€ ํ”ผ์‚ฌ์ฒด์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๋‹ค๋ฅธ๊ฒฝ์šฐ..
[Computer Vision/OpenCV] 12. Unsharp Masking
ยท
๐Ÿฆ„AI/Computer Vision
์ €๋ฒˆ ํฌ์ŠคํŒ…์—์„œ Low pass filter์™€ High pass filter๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์–ด๋–ค๊ฒƒ์ด ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋‹ค.์ด๋ฒˆ์—๋Š” ์ด ํ•„ํ„ฐ๋“ค์„ ์ด์šฉํ•ด์„œ ์ด๋ฏธ์ง€๋ฅผ ์กฐ๊ธˆ ๋” ์„ ๋ช…ํ•˜๊ฒŒ ๋ฐ”๊พธ๋Š” Unsharp Masking์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž https://he-kate1130.tistory.com/139 [Computer Vision/OpenCV] 10. Spatial Filtering & Convolution ๊ฐœ๋…์ง€๋‚œ์‹œ๊ฐ„์—๋Š” ์ด๋ฏธ์ง€์˜ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ์ด์šฉํ•ด ํ”ฝ์…€ ๊ฐ’๋“ค์„ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•๋“ค์„ ์ •๋ฆฌํ–ˆ๋‹ค.์˜ค๋Š˜๋ถ€ํ„ฐ๋Š” ์ด๋ฏธ์ง€์˜ spatial data๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐฉ์‹๋“ค์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•œ๋‹ค.์ด๋ฏธ์ง€์˜ ๊ณต๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„he-kate1130.tistory.com Unsharp Masking์ด๋ฏธ์ง€๋ฅผ ์„ ๋ช…ํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฒ•์„ ๋งํ•œ..
[Computer Vision/OpenCV] 11. Spatial Filtering
ยท
๐Ÿฆ„AI/Computer Vision
์ด๋ฒˆ ํฌ์ŠคํŒ…์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ•„ํ„ฐ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๊ณ  OpenCV๋กœ ์ง์ ‘ ์‹ค์Šตํ•˜๋Š” ๋‚ด์šฉ์„ ๋‹ด์•˜๋‹ค.๋จผ์ € Low-pass, High-pass filter๊ฐ€ ๋ญ”์ง€ ์•Œ์•„๋ณด๊ณ Uniform Mean, Gaussian, Sobel, Laplacian filter์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณธ๋‹ค. ์ €๋ฒˆ ํฌ์ŠคํŒ…์—์„œ ํ•„ํ„ฐ๋ง ์—ฐ์‚ฐ์— ๋Œ€ํ•ด์„œ ๊ฐ€๋ณ๊ฒŒ ๋‹ค๋ฃจ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ์ดˆ์ ์ธ ์—ฐ์‚ฐ ๋ฐฉ๋ฒ• ์ •๋ฆฌ๋Š” ์ œ์™ธํ•˜์˜€๋‹ค. ๊ทธ๋ž˜๋„ ๋‚ด๊ฐ€ ์ฝ์œผ๋ ค๊ณ  ์“ฐ๋Š” ๊ธ€์ด๋‹ˆ๊นŒ ์ตœ๋Œ€ํ•œ ์‰ฝ๊ฒŒ... ์“ฐ๋Š” ์ค‘์ด๋‹ค.https://he-kate1130.tistory.com/139 [Computer Vision/OpenCV] 10. Spatial Filtering & Convolution ๊ฐœ๋…์ง€๋‚œ์‹œ๊ฐ„์—๋Š” ์ด๋ฏธ์ง€์˜ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ์ด์šฉํ•ด ํ”ฝ์…€ ๊ฐ’๋“ค์„ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•๋“ค์„ ์ •๋ฆฌํ–ˆ๋‹ค.์˜ค๋Š˜๋ถ€ํ„ฐ๋Š” ์ด๋ฏธ์ง€์˜ spat..
[Computer Vision/OpenCV] 10. Spatial Filtering & Convolution ๊ฐœ๋…
ยท
๐Ÿฆ„AI/Computer Vision
์ง€๋‚œ์‹œ๊ฐ„์—๋Š” ์ด๋ฏธ์ง€์˜ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ์ด์šฉํ•ด ํ”ฝ์…€ ๊ฐ’๋“ค์„ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•๋“ค์„ ์ •๋ฆฌํ–ˆ๋‹ค.์˜ค๋Š˜๋ถ€ํ„ฐ๋Š” ์ด๋ฏธ์ง€์˜ spatial data๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐฉ์‹๋“ค์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•œ๋‹ค. ์ด๋ฏธ์ง€์˜ ๊ณต๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์šฐ๋ฆฌ๋Š” ํ•„ํ„ฐ๋ง ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•œ๋‹ค.๋”ฐ๋ผ์„œ ๋ณธ๊ฒฉ์ ์ธ ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด๊ธฐ ์ „์—, ๋จผ์ € ํ•„ํ„ฐ๋ง์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. Spatial Filtering์˜์ƒ ์ฒ˜๋ฆฌ์—์„œ Spatial filtering์€ ์ด๋ฏธ์ง€์— ํ•„ํ„ฐ์—ฐ์‚ฐ์„ ์ ์šฉํ•ด ์ด๋ฏธ์ง€๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋ฐฉ์‹์„ ๋งํ•œ๋‹ค. ํ•„ํ„ฐ ์—ฐ์‚ฐ์€ ์˜์ƒ์˜ ๊ณต๊ฐ„์˜์—ญ์—์„œ ํŠน์ • ์˜์—ญ ๋‹จ์œ„๋กœ ํ•„ํ„ฐ๋ง ์ปค๋„ ํ•จ์ˆ˜์™€ ํ”ฝ์…€ ๊ฐ’์˜ ๊ณฑ์…ˆ ๋ฐ ํ•ฉ์‚ฐ ์—ฐ์‚ฐ(Dot Product)์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.์ˆ˜์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ด ์‹์„ ๊ทธ๋ฆผ์œผ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค. ํ•„ํ„ฐ ์—ฐ์‚ฐ์„ ์œ„ํ•ด ๋ฏธ๋ฆฌ ์ •์˜ํ•œ ์ปค๋„์„ ๋‹ค๋ฅธ ๋ง๋กœ ๋งˆ์Šคํฌ๋ผ..
[Computer Vision/OpenCV] 9. Histogram Matching
ยท
๐Ÿฆ„AI/Computer Vision
์ €๋ฒˆ ํฌ์ŠคํŒ…์œผ๋กœ ํžˆ์Šคํ† ๊ทธ๋žจ Equalization์„ ๋ฐฐ์› ๋‹ค. Histogram Equalization์€ ํžˆ์Šคํ† ๊ทธ๋žจ์˜ ๋ถ„ํฌ๋ฅผ ๊ท ์ผํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.์˜ค๋Š˜์€, ๊ท ์ผํ•œ ๋ถ„ํฌ๋ฅผ๋„˜์–ด์„œ์„œ  "ํŠน์ •ํ•œ ๋ถ„ํฌ"๋กœ ๋ฐ”๊พธ๋Š” Histogram Matching์— ๋Œ€ํ•ด์„œ ๋ฐฐ์šด๋‹ค.์ด ๊ณผ์ •์—์„œ Histogram Equalization์ด ์‚ฌ์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์— equalization์— ๋Œ€ํ•ด์„œ ์–ด๋Š์ •๋„ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค. Histogram MatchingํŠน์ •ํ•œ ํžˆ์Šคํ† ๊ทธ๋žจ ํ˜•ํƒœ๋กœ ์ด๋ฏธ์ง€์˜ ์›๋ณธ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์„ histogram matching์ด๋ผ๊ณ  ํ•œ๋‹ค.์ฆ‰, ์›๋ณธ ํžˆ์Šคํ† ๊ทธ๋žจ S๋ฅผ ๋ณ€ํ˜•ํ•˜์—ฌ ํžˆ์Šคํ† ๊ทธ๋žจ Z๋กœ ๋งŒ๋“ ๋‹ค.  Histogram Matching ๊ณผ์ •์œ„์˜ ์‚ฌ์ง„์œผ๋กœ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด Histogram Equalization์„ ํ†ตํ•ด์„œ T..
[Computer Vision/OpenCV] 8. Histogram Equalization
ยท
๐Ÿฆ„AI/Computer Vision
์ €๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์ด๋ฏธ์ง€์˜ ๋Œ€๋น„๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๋Š” Histogram Stretching์•  ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋‹ค.์ด๋ฒˆ์—๋Š” ํžˆ์Šคํ† ๊ทธ๋žจ์˜ ๋ถ„ํฌ๋ฅผ ๊ท ์ผํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” Histogram Equalization์„ ์‚ดํŽด๋ณด์ž.Histogram EqualizationHistogram Equalization์€ Stretching๊ณผ ๋น„์Šทํ•˜๊ฒŒ ์ด๋ฏธ์ง€์˜ ๋Œ€๋น„๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๋Š” ํšจ๊ณผ๋ฅผ ๊ฐ€์ง„๋‹ค.๊ทธ๋Ÿฌ๋‚˜ ๋‘˜์˜ ๋‹ค๋ฅธ ์ ์€Stretching์€ ๊ธฐ์กด ํžˆ์Šคํ† ๊ทธ๋žจ์˜ ๋ฒ”์œ„๋ฅผ ํ™•๋Œ€ํ•˜๋Š” ๊ฒƒ์ด๊ณ , Equalization์€ ์ „์ฒด ๋ฒ”์œ„(0-255)์—์„œ ํžˆ์Šคํ† ๊ทธ๋žจ์˜ ๋ถ„ํฌ๋ฅผ ์ตœ๋Œ€ํ•œ ๊ท ์ผ๊ฒŒ ๋งŒ๋“ ๋‹ค๋Š” ์ ์ด๋‹ค.  Histogram Equalization ๊ณผ์ •$M$: ์ด๋ฏธ์ง€ cols$N$: ์ด๋ฏธ์ง€ rows $n_k$: k intensity์—์„œ์˜ ํžˆ์Šคํ† ๊ทธ๋žจ ๋†’์ด ์ฆ‰, Histogra..
[Computer Vision/OpenCV] 7. Histogram Stretching
ยท
๐Ÿฆ„AI/Computer Vision
์šฐ๋ฆฌ๋Š” ์ €๋ฒˆ ํฌ์ŠคํŒ…์„ ํ†ตํ•ด์„œ ํžˆ์Šคํ† ๊ทธ๋žจ์ด ๋ฌด์—‡์ธ์ง€ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.์˜ค๋Š˜์€ Histogram Transformation์ค‘ ํ•˜๋‚˜์ธ Histogram Stretching์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. Histogram Stretching (Contrast Stretching)์ด๋ฏธ์ง€์˜ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ๋ฝ‘์•„๋ดค๋”๋‹ˆ ๋‹ค์Œ์ฒ˜๋Ÿผ ๋‚˜์™”๋‹ค๊ณ  ํ•˜์ž.  ํžˆ์Šคํ† ๊ทธ๋žจ์˜ ๊ฐ’๋“ค์ด ํ•œ ์ชฝ์— ๋ญ‰์ณ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.์ด๋Ÿด ๋•Œ ์šฐ๋ฆฌ๋Š” ์ด ์ด๋ฏธ์ง€๋ฅผ ๋Œ€๋น„๊ฐ€ ์•ฝํ•œ, Flat ํ•œ ์ด๋ฏธ์ง€ ๋ผ๊ณ  ํ•œ๋‹ค. Histogram stretching์€ ์ด๋ฏธ์ง€์˜ ๋Œ€๋น„๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ ํ”ฝ์…€์˜ ๊ฐ’ ๋ฒ”์œ„๋ฅผ ๋” ๋„“์€ ๋ฒ”์œ„๋กœ ํ™•์žฅ์‹œํ‚ค๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ์‹์„ ์ดํ•ดํ•ด ๋ณด๋ฉด, ๊ธฐ์กด์˜ ๋ฐ๊ธฐ ๋ฒ”์œ„ $i_{max} - i_{min}$์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€์˜ ๋ฒ”์œ„๋ฅผ normalizeํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค..