๐ง๐ปโ๐ป์ฉ์ด ์ ๋ฆฌ
Computer vision
Image Restoration
noise
Gaussian Noise
Wiener Filter
Weight
Adaptive Filtering
Gaussian Noise
Gaussian Noise๋ ์ผ๋ฐ์ ์ธ image์ Gaussian Noise๋ฅผ ์์ noise๋ฅผ ๋ฃ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.

์ ๋ ๋ ์ฌ์ง๊ณผ ๊ฐ์ฃ .
์ฐ๋ฆฌ๊ฐ ๋ฐฐ์ฐ๋ noise๋ ๋ํด์ ธ์ ๋ค์ด๊ฐ๋ noise๋ฅผ ๋ค๋ฃน๋๋ค.
๊ทธ๋์ ์ด๋ Additive White Gaussian Noise (AWGN)๋ผ๊ณ ํ ์ ์์ต๋๋ค.
Additive White Gaussian Noise (AWGN)
image์ ๋์ผํ ํฌ๊ธฐ์ noise๊ฐ ์๋ ๊ฒ์ ๋๋ค.
๋ํด์ ธ์ ๋ฐ์๋ noise๋ค์ image์์ ์ด๋ป๊ฒ ์์จ์ง์ ๋ํ ์๊ธฐ๋ฅผ ํด๋ณด๊ฒ ์ต๋๋ค.

์ด๋ฒ์๋ Gaussian noise๊ฐ ๋ํด์ง๋๋ค.
Gaussian ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๋ Noise๊ฐ Gaussian Noise์ ๋๋ค.
์ค์ ๋ก Gaussian ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๋ Gaussian noise๋ฅผ ๋ง๋ค์ด๋ด ๋๋ค.
ํ๊ท ๊ณผ ๋ถ์ฐ์ ๊ตฌํด์ผํฉ๋๋ค.
์ฌ๊ธฐ์ ํ๊ท ์ ๋ชจ๋ 0์ด๋ผ๊ณ ํ๊ฒ ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ถ์ฐ์ ์์์ ๋ถ์ฐ๊ฐ์ผ๋ก ์ง์ ์ ํด์ค์ผํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ image์ shape์ธ h x w์ ๋ํ ํฌ๊ธฐ๋ก Gaussian noise๋ฅผ ํ๊ท ๊ณผ ๋ถ์ฐ์ ๋ฐ๋ผ ์์ฑ์ ํด์ค๋๋ค.
์์ฑํด์ผํ ๊ฐ์๋ h x w๊ฐ ๋งํผ์ ์์์ ๊ฐ๋ค์ ๊ฐ์ ธ์์ผํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ randomํ๋ฉด์ ํ๊ท ์ด 0์ด ๋๋๋ก noise๋ฅผ ์ค๋๋ค.
๊ทธ๋ฆฌ๊ณ ๊ฐ๋ค์ ๋ํด์ ๋ถํฌ๋ฅผ ๋ณด๋ฉด ์ ๊ท ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๋๋ก ๋ง์ด์ฃ .
์ผ๋จ ์ฐ๋ฆฌ์ ๋ชฉ์ ์ Gaussian noise๋ฅผ ์์ ๋ ๊ฒ์ด ๋ชฉ์ ์ด์ง๋ง, ์์ ๊ธฐ ์ ์ Gaussian noise๋ฅผ ํ ๋ฒ ๋ง๋ค์ด๋ณด๊ฒ ์ต๋๋ค.
๊ทธ๋์ I๋ผ๋ Image์ noise๊ฐ ๋ํด์ ธ์ noise๊ฐ ์๋ image๋ฅผ ๋ง๋๋ ์์์ ์๋์ ๊ฐ์ต๋๋ค.

์ด๋ฅผ ๊ทธ๋ฆผ ๊ทธ๋ฆฌ๋ฉด ๋ค์๊ณผ ๊ฐ์ฃ .

ํ๊ท ์ ๋ฌด์กฐ๊ฑด 0์ด ๋๋๋กํ๊ณ , ๋ถ์ฐ๋ ํฐ ๊ฒ ์๊ณ ์์ ๊ฒ ์์ ๊ฒ์ ๋๋ค.
๋ถ์ฐ์ด 100์ด๋ผ๊ณ ํ๋ฉด, 10 ์ ๋์ ์ฐจ์ด๊ฐ ๋๋ ๊ฐ๋ค๋ก ๋ถํฌ๊ฐ ๋์ด ์์ต๋๋ค.
์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ๋ถ์ฐ์ด ์ปค์ง๋ฉด ํ๊ท 0์ ๊ธฐ์ค์ผ๋ก ์ฐจ์ด๊ฐ ๋ ํฐ ๊ฐ๋ค๋ก ๊ตฌ์ฑ์ด ๋์ด ์์ต๋๋ค.

๊ทธ ๋ง์, ๋ถ์ฐ์ด ํฌ๋ค๋ฉด, ์๋ก ๋ค๋ฅธ ๊ฐ๋ค์ด ํด ๊ฐ๋ฅ์ฑ์ด ๋์ ๊ฒ์ ๋๋ค.
0์ ๊ธฐ์ค์ผ๋ก ์ฐจ์ด๊ฐ ๋๋ ๊ฐ๋ค๋ก ๋ถํฌ๊ฐ ๋์ด์์ ํ๋ฅ ์ด ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ทธ๋ฐ๋ฐ, ๋ถ์ฐ์ด ๋งค์ฐ ์๋ค๋ฉด, ์ฌ์ฉํ ์ ์๋ ๊ฐ๋ค์ด ์ ์ผ๋ฏ๋ก, ๊ทธ ๋งํผ noise๊ฐ ์์์ ์๋ฏธํฉ๋๋ค.
๊ทธ๋์ Gaussian noise๋ฅผ ๋ง๋ค ๋, ๋ถ์ฐ์ ๊ฐ๋ ์ ๋ ฅ์ผ๋ก ๋ฃ์ด์ฃผ๋๋ฐ, ๋ถ์ฐ์ด ํด์๋ก noise๊ฐ ๋ง์์ง๊ณ , ๋ถ์ฐ์ด ์์์๋ก noise๊ฐ ์ ์ด์ง๋ ๊ฒ์ ๋๋ค.
Gaussian noise๋ randomํ ๊ฐ์ด ๋ง ํผ์ ธ ์๋ ๊ฒ์ธ๋ฐ, ๊ทธ randomํ ๊ฐ์ ๋ถํฌ๋ฅผ ๋ณด๋ฉด ํ๊ท ์ ๊ธฐ์ ์ผ๋ก ์ฐ์ธก๊ณผ ๊ฐ์ ๋ชจ์์ผ๋ก ํด์ ธ์๊ณ , ํ๊ท ์ ์ฌ๊ธฐ์ 0์ด๊ณ ๋ถ์ฐ์ ๋ฐ๋ผ ๋ถํฌ๊ฐ ์๋งํด์ง๊ธฐ๋ํ๊ณ ๊ฐํ๋ผ์ง๊ธฐ๋ ํฉ๋๋ค.
๋ถ์ฐ์ด ํด์๋ก, ์งํญ์ด ์ปค์ง๋ฏ๋ก, noise๊ฐ ์ปค์ง๊ณ , ๋ถ์ฐ์ด ์์ ์๋ก noise๊ฐ ์์์ง๋๋ค.
์ค์ ๋ก๋ noise๊ฐ ๊ปด์๋ Image์ ๋ํ ์ฒ๋ฆฌ๋ฅผ ํ๋ ๊ฒ์ด๊ณ , ์ค์ ์ํฉ์ noise๋ฅผ ๋ง๋ค์ด์ ๋ฃ์ง๋ ์์ต๋๋ค.
Gaussian noise๋ ๊ฒฐ๊ตญ randomํ ๊ฐ์ด๋ผ ์๊ฐํ๋, ๊ท์น์ ํ๊ท ๊ณผ ๋ถ์ฐ์ ๋ํด์ ์๊ฐํด์ฃผ์ด์ผ ํฉ๋๋ค.
์ด์ ์ค์ ๋ก Gaussian noise๊ฐ ๊ปด์๋ image๊ฐ ์ฃผ์ด์ก์ ๋, ์ด๋ป๊ฒ noise๋ฅผ ์ง์ธ์ง์ ๋ํด ์ด์ผ๊ธฐ ํด๋ณด๊ฒ ์ต๋๋ค.
์ฐ๋ฆฌ๋ ์ด Gaussian noise๋ฅผ ๊ท์น๋ง ์งํค๋ฉด ๋ฌดํํ๊ฒ ๋ง๋ค์ด๋ผ ์ ์์ต๋๋ค.

๊ทธ๋์ ์์ ๊ฐ์ด 100๊ฐ๋ฅผ ๋ง๋ค์ด๋ด ๋๋ค.
๊ทธ ๊ฐ๊ฐ์ clean image์ ๋ํด์ฃผ์ด noise image๋ 100๊ฐ๋ฅผ ๋ง๋ญ๋๋ค.

๊ทธ๊ฒ์ ์์ ๊ฐ์ด ์์์ผ๋ก ๋ํ๋ด๊ณ , ์ ์ขํญ, ์ฐํญ์ ์๋ค์ ๋ชจ๋ ๋ํ์ฌ ํ๊ท ์ ๋ด์ด์ค๋๋ค. 100์ผ๋ก ๋๋์ด์ฃผ๋ฉด ๋๊ฒ ์ฃ .

๊ทธ๋์ ์์ ๊ฐ์ ์์ผ๋ก ์ขํญ๊ณผ ์ฐํญ์ ํํํ ์ ์๊ฒ ์ฃ ?
๊ทธ๋ฐ๋ฐ, ์ ์ค๋ช ๊ณผ ๊ฐ์ด, ์ฐ์ธก์ noise์ ๋ํ ํ๊ท ์ 0์ ๊ฐ๊น์์ง๋ค๊ณ ํฉ๋๋ค.
๊ทธ ๋ด์ฉ์ ๋ํด ๋ ์ดํด๋ด ์๋ค.

์์ ๊ฐ์ด N_1 ~ N_100์ matrix๋ฅผ ๋ค ๋ํ๋ค๋ ์๋ฏธ์ ๋๋ค.
์ด ๋ํด์ง๋ ๋ถ๋ถ์ ๋์ผํ pixel ์์น์ ์๋ ๊ฒ๋ค๋ผ๋ฆฌ๋ง ๋ํด์ง๋๋ค.
๊ฒฐ๊ตญ 100๊ฐ์ง์ Noise์ ๋ํ ํ๊ท ๊ฐ์ ๊ตฌํ๋ ๊ฒ์ด์ฃ .
๊ฐ Pixel ์์น๋ง๋ค์ Noise๋ฅผ ๋ชจ์์ ํ๊ท ์ ํ๋ ๊ฑด๋ฐ, Gaussian noise์ ํ๊ท ์ ์ฐ๋ฆฌ๊ฐ 0์ผ๋ก ๊ฐ์ ํ์ฃ .
์ด๊ฒ์ ๊ฐ์ N_i์ noise์ ํ๊ท ์ด 0์ด ๋๋ค๋ ์๋ฏธ์ด๊ณ ,
์ฐ๋ฆฌ๊ฐ ์ง๊ธ ์ 100๊ฐ์ noise๋ฅผ ๋ค ๊ฐ์ ๋ถ์ฐ์ผ๋ก ๋ง๋ค์๊ธฐ ๋๋ฌธ์, ๊ตณ์ด ํ๋์์ ๋ณผ ๊ฒ์ด ์๋๋ผ,
๋ค๋ฅธ noise์์ ๋ฐ์ํ 100๊ฐ๋ง์ผ๋ก๋ Gaussian ๋ถํฌ์ ํน์ฑ ์ ๊ฐ๊ฐ์ ์ง์ ๋ค์ด ๋ชจ๋ 0์ผ๋ก ๊ฐ๊ฑฐ๋ผ๊ณ ๊ธฐ๋๋ฅผ ํด๋ณผ ์ ์์ต๋๋ค.
์ ํํ 0์ ์๋์ง๋ง, 0์ ๊ฐ๊น๊ฒ ๋ง์ด์ฃ .
๊ฒฐ๊ตญ, noise๊ฐ ๋ image๋ฅผ 100๊ฐ๋ฅผ ํ๊ท ํ๋ฉด ๊ทธ๊ฒ ๊ณง clean image๊ฐ ๋๋ค๊ณ ๋ณผ ์ ์์ต๋๋ค.

์ค์ ์ํฉ์ ์๋์ง๋ง,
clean image์ Gaussian noise๋ฅผ ์์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ ์ ํ์ต๋๋ค.
10๊ฐ์ noise image๋ฅผ ๋ชจ์๋๊ณ ํ๊ท ์ ๋ด๋ฉด noise๊ฐ ์ด๋์ ๋ ์ง์์ก์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ 100๊ฐ์ noise image๋ฅผ ๋ชจ์๋๊ณ ํ๊ท ์ ๋ด๋ฉด ์ค๋ฅธ์ชฝ ์๋์ ๊ฐ์ด ๋์ต๋๋ค.
๊ฒฐ๊ตญ, ๋ถ์ฐ์ด ๊ฐ์ Gaussian Noise๋ค์ ๋ชจ์๋๊ณ ํ๊ท ์ ์ทจํ๋ฉด ๊ทธ๊ฒ๋ค์ 0์ผ๋ก ๋ง๋ค ์ ์์ต๋๋ค.
์ง๊ธ๊น์ง ํ ๊ฒ์ clean image์์ ์์ํ ๊ฒ์ด์ฃ .
๊ทธ๋ ๋ค๋ฉด ์ด๋ฒ์๋ denoising ์ ์ํ ์ค์ ์ํฉ์ image๊ฐ ๋ค์ด์ค๋ ๊ฒ์ ํด๋ด ์๋ค.
์ฐ๋ฆฌ๊ฐ ๋ฐฉ๊ธ ํ, noise๋ค์ ๋ชจ์๋๊ณ ํ๊ท ํ๋ฉด 0์ผ๋ก ๋ง๋ค ์ ์๋ ๋ฐฉ๋ฒ์ ํตํด์ ๋ง์ด์ฃ .

์์ ๊ฐ์ ์ข์ ์์ญ์ ๋ํด, localํ๊ฒ ์์ ์๋ ๊ฐ๋ค์ ๋ํด ํ๊ท ์ ์ทจํ๋ฉด noise๋ค์ ๋ชจ์ ์ ์๋ค๊ณ ์๊ฐ์ ํด๋ด ๋๋ค.

์ผ๋จ ์์ ๊ฐ์ด 5 x 5๋ก 25๊ฐ์ pixel ๊ฐ์ ๋ฐ์ต๋๋ค.
๊ทธ๋ผ ์๋ ์์๊ณผ ๊ฐ์ด noise๊ฐ ๋ผ์ด์๋ pixel ๊ฐ์ a_1 ~ a_25๋ก ๋ํ๋ ๋๋ค.

๊ทธ๋ ๋ค๋ฉด ์ a_1 ~ a_25๋ ๋ชจ๋ noise๊ฐ ๋ผ์ด์๋ pixel ๊ฐ์ ๋๋ค.
๊ทธ๋์ a_1์ด๋ผ๋ pixel ๊ฐ์ clean image + noise image์ฒ๋ผ ํํํ๋ ๊ฒ์ด ์ ์์์ ๋๋ค.
์ฐ๋ฆฌ์ ๋ชฉ์ ์ a_1 ๋์ ์ c_1์ ๊ตฌํ๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ค๊ฐ์ ๊ฐ์ฅ ์ค์ํ pixel ๊ฐ์ด, 5 x 5 ๊ธฐ์ค ๊ฐ์ด๋ฐ pixel ๊ฐ์ ๋๋ค.
์ด๋ ์ฐ๋ฆฌ๊ฐ filtering ํ ๋ ๊ฐ์ด๋ฐ ์์น์ ์๋ ๊ฐ์ filtering์ ํตํด ๋ฐ๊ฟ์ฃผ์์ต๋๋ค.
์ฌ๊ธฐ์ ๊ฐ์ด๋ฐ๋ a_13์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง๊น์ง ์จ๋ณด๋ฉด ์์ ๊ฐ์ด a_25๋ก ์ธ ์ ์์ต๋๋ค.

๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ํ๊ท ์ ๋ ๋๋ค.
n_i๋ ์ก์์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ , ํ image์์ ๋ฝ์ ๊ฒ์ด๋ ๋ถ์ฐ๋ ๊ฐ์ต๋๋ค.
๊ทธ๋์ ์ฐ๋ฆฌ๊ฐ 5 x 5๋ก 25๊ฐ์ noise๋ฅผ ๋ชจ์์ต๋๋ค.
์ด์ ๋๋ฉด n_1 ~ n_25์ ํ๊ท ์ ๋ํ ๊ฐ์ด 0์ด ๋์ผ๋ฉด ์ข๊ฒ ๋ค๊ณ ์ฐ๋ฆฌ๋ ๊ธฐ๋ํฉ๋๋ค.
๊ทธ๋ฐ๋ฐ ์ฌ๊ธฐ์ 5 x 5๊ฐ ์๋ ๋ ํค์์ ํ๋ฉด, 7 x 7, 9 x 9, 11 x 11, ... ๋ฑ
filter์ ํฌ๊ธฐ๋ฅผ ํค์ฐ๋ฉด ํค์ธ ์๋ก noise๋ค์ ๋ ๋ง์ด ๋ชจ์ ์ ์์ต๋๋ค.
๋ง์ด ๋ชจ์ผ๋ฉด ๋ชจ์ ์๋ก ํ๊ท ํ์ ๋ 0์ ๊ฐ๊น๊ฒ ๋ง๋ค์ด์ค ์๊ฐ ์์ต๋๋ค.
์ฌ๊ธฐ์,
patch ์์ ์๋ pixel ๊ฐ๋ค์ ํ๊ท ์ด, cleanํ pixel ๊ฐ์ธ c์ ํ๊ท ๊ณผ ์์ ํ ๊ฐ์ง ์์ง๋ง ์ด๋ ์ ๋ ๋น์ทํ ๊ฑฐ๋ผ๊ณ ๊ธฐ๋ํฉ๋๋ค.
๊ทธ๋ ๋ค๋ฉด average filter๊ฐ ์ด๋์ ๋ noise ๊ฐ์์ ํจ๊ณผ๊ฐ ์๋ค๊ณ ๋ณผ ์ ์์ต๋๋ค.
์ 5 x 5 patch ์์ ์๋ ๊ฐ์ด๋ฐ pixel ๊ฐ์ด, a_13์ด ํ๊ท ์ผ๋ก ๊ณ์ฐํ ๊ฒฝ์ฐ์, ๊ณ์ฐ ๊ฐ์ ๋น์ฐํ ํ๊ท ๊ฐ์ผ๋ก ์ฑ์์ง๊ฒ ์ง๋ง,
์ด๊ฒ์ cleanํ ๊ฐ๋ง ๊ฐ์ง๊ณ ํ๊ท ์ ์ทจํ ๊ฒ๊ณผ ๊ฑฐ์ ๊ฐ๋ค๊ณ ์๊ฐ ํ ์ ์์ต๋๋ค.
๊ทธ๋ผ noise๊ฐ ์ ๊ฑฐ๋ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.

์ฌ์ค ์ฐ๋ฆฌ๊ฐ ๊ฐ์ฅ ์ฐพ๊ณ ์ํ๋ ๊ฒ์ ์ ์ฌ์ง์์ c_13์ด์ง๋ง, ์ด๊ฒ์ ๋ฐ๋ก ์ฐพ์ ์๋ ์์ผ๋,
์ฃผ๋ณ์ ํ๊ท ๊ฐ๋ค๋ก ์ด๋ ์ ๋ ์ฑ์ฐ๊ณ ๋์ ์ noise๋ฅผ ์์จ ์ ์์์ต๋๋ค.
๊ทธ๋์ noise๋ ์์จ ์ ์์ง๋ง,
์ฐ๋ฆฌ๊ฐ ํ๊ท ์ ์ทจํ๋ฉด์ ๋ฐ์ํ ์ ์๋ ํ์์ด ๋ฟ์๊ฒ ๋๊ณ blur๊ฐ ๋ค์ด๊ฐ๋ ์ ์ข์ ํ์์ด ์ผ์ด๋ฉ๋๋ค.
noise๋ฅผ ์ง์ธ ์ ์๋ค๋ ์ฅ์ ๊ณผ ๋ฟ์๊ฒ ๋๋ค๋ ๋จ์ ์ด ๊ณต์กดํ๊ฒ ๋ฉ๋๋ค.
๊ทธ๋ ๊ฒ ์ผ์ชฝ๊ณผ ๊ฐ์ด 3 x 3 average filter๋ฅผ ํ ์๋ ์๊ณ , ์ฐ์ธก๊ณผ ๊ฐ์ด 5 x 5 filter๋ฅผ ์์ธ ์๋ ์์ต๋๋ค.

์ด๊ฒ ๊ทธ๋ ๊ฒ ํฐ filter๊ฐ ์๋๋ค ๋ณด๋, 3 x 3, 5 x 5 ๊ฐ๊ฐ์ 9๊ฐ, 25๊ฐ ์ ๋ ๋ฐ์ ๋ชจ์ผ์ง ๋ชปํ๋,
noise๋ค์ด ๋ชจ๋ 0์ด ๋ ์๋ ์์์ต๋๋ค.
์ฌ๊ธฐ์ filter์ ํฌ๊ธฐ๋ฅผ ๋ ํค์ฐ๋ฉด noise๋ฅผ ๋ ๋ง์ด ์ง์ธ ์ ์์ ๊ฒ์ ๋๋ค.
๊ทธ๋์ ์๋์ ๊ฐ์ ํน์ง์ ๊ฐ์ง๋๋ค.
- Using a small window : is not so effective in noise removal
- Using a large window : is effective in noise removal, but the output image is over-smoothed
noise image๋ฅผ ๋ ๋ง์ด ๋ชจ์์, ๋ง์ด ๋ชจ์ ๊ฒ๋ค๋ก ํ๊ท ์ ํ๋ Gaussian ๋ถํฌ๋ฅผ ๋ ํ๋ด๋ฅผ ์ ๋ผ์๊ฐ ์์ต๋๋ค.
๊ทธ๋ ๊ฒ 0์ ๊ฐ๊น๊ฒ ๋ง๋ค ์๊ฐ ์๋ ๊ฒ์ ๋๋ค.
์ด๊ฒ window size๊ฐ ์ปค์ง๋ ๊ฒ์ ๋ํ ์ฅ์ ์ด์ฃ .
๊ทธ๋ฐ๋ฐ, window size๊ฐ ํด์๋ก blur ํจ๊ณผ๊ฐ ๋ ๊ทน๋ํ ๋๋ค๋ ๋จ์ ์ด ์์ต๋๋ค.
์ด๊ฒ์ ๋น์ฐํ๊ฒ๋ ๊ฐ์ด๋ฐ ๊ฐ์ ๋์ฒดํ๊ธฐ ์ํด ์ฃผ๋ณ์ ๊ฐ์ ๋ํ ๋ฐ๊ฒฝ์ ๋๋ฆฌ๋ค๋ณด๋ฉด ์์ด๋ ๊ฐ์ด ๋ ๋ง์์ง๋๋ค.
๊ทธ๋ผ ์๋์ ๋์ ๊ฐ์ ์์ด๋ฒ๋ฆด ๊ฐ๋ฅ์ฑ์ด ๋ ๋์์ง๋๋ค.
๊ทธ๋ ๊ฒ ๋๋ฉด์ smoothing์ด ๋ ์ผ์ด๋๋ค๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
์ด๊ฒ ์ด๋์ ๋์ trade-off๊ฐ ์์ต๋๋ค.
noise๋ฅผ ๋ ์ ์ง์ฐ๋๋์ smoothing์ ์ผ๋ง๋ ๊ฐ์ํ๋์ ๋ํ ๊ฒ์ด์ฃ .
Adaptive Filtering : Wiener Filter
This filter adaptively changes its characteristics according to intensity values within the mask
โข Key Idea: using local properties of intensity values within the mask. Combine the original input and mean values
์๋์ ๊ฐ์ ์๋ก์ด image๊ฐ ์๋ค๊ณ ํฉ์๋ค.

์ฐ๋ฆฌ๋ ์ด๊ฒ์ ๋ํด์ ์์ญ 3๊ฐ๋ฅผ ๊ฐ์ง๊ณ , denoising์ ์ํด ํ๊ท filter๋ฅผ ์ ์ฉํ๋ค๊ณ ํ๋ฉด,
๊ฐ์ฅ ์์ ์๋ patch์ ๊ฒฝ์ฐ๋ uniformํ region์ผ๋ก ๋ณผ ์ ์์ต๋๋ค.
์ด๋ฐ uniformํ region์ average filter๋ฅผ ์ทจํด๋ ์๋์ ๋์ ๊ฐ๊ณผ ๋ณ๋ก ๋ฌ๋ผ์ง์ง ์์ ๊ฒ์ ๋๋ค. ๋์ธ ๊ฐ์ด๋ฐ ๊ฐ์ด ์ฃผ๋ณ์ ์๋ ๊ฐ๋ค๊ณผ ๋น์ทํ๊ธฐ ๋๋ฌธ์ด์ฃ .
์ด๊ฒ์ ์ค์๊ฐ์ด๋ ๋ฒ์ ์์ ์ฃผ๋ณ๊ณผ์ ํ๊ท ๊ฐ์ด๋ ์ฐจ์ด๊ฐ ํฌ๊ฒ ์์ต๋๋ค. ์๋ก ๋น์ทํ ๊ฐ์ ๋๋ค.
์ด๊ฒ์๋ average filter๋ฅผ ์ทจํ๋ ๋ฐ ๋ถ๋ด์ด ์์ฃ .
๊ทธ๋ฐ๋ฐ, ์ค์ ๊ฐ์ ๋ด ์๋ค. (2๋ฒ์งธ patch)
์ด๊ฒ์๋ edge๊ฐ ํฌํจ๋์ด ์์ด, ๊ฐ์ด๋ฐ ๊ฐ์ด ๋ฐ์ ๊ฐ์ด๊ณ ์ผ์ชฝ์ ๋ฐ๊ณ ์ค๋ฅธ์ชฝ์ ์ด๋์ด ๊ฐ์ ๋๋ค.
์ด๊ฒ์ ๋ํด ํ๊ท ๊ฐ์ ํด์ฃผ๋ฉด ์ฝ๊ฐ ์ด๋์ด ํ์์ด ๋์ฌ ๊ฒ์ ๋๋ค.
์๋๋ ๋ฐ์๋ ๊ฒ์ด denoising์ ํ๋ ค๋ค ๋ณด๋ pixel ๊ฐ ์์ฒด๊ฐ ์์์ด ๋๋ ์ผ์ด ๋ฐ์ํฉ๋๋ค.
์ด๋ ๊ฒ edge๊ฐ ์๋ ๋ถ๋ถ์ ๋ํด์ average filter๋ฅผ ์ทจํ๋ฉด ์๋ pixel ๊ฐ์ ์ ์งํ์ง ๋ชปํ๊ณ ์์์ด ๋ง์ด ๋ฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ smoothing์ด ๋๋ฌด ๋ง์ด ์ผ์ด๋๋ ๊ฒฐ๊ณผ๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค.
๊ฒฐ๊ตญ average filter๋ก denoising์ ํจ๊ณผ๊ฐ ์๋ค๋ ๊ฒ๊น์ง๋ ํ์ ์ด ๋์์ง๋ง,
์กฐ๊ธ ๋ ์๊ฐ์ ๋ฐ์ ํ์ฌ ์กฐ๊ธ ๋ ์ข๊ฒ ๋ง๋ค์ง๋ฅผ ๊ณ ๋ฏผํด๋ณด์์ผ ํฉ๋๋ค.
์ผ๋จ, average filter๋ฅผ ์ทจํด๋ ๋ณ๋ก pixel ๊ฐ์ ์์์ด ์๋ ๋ถ๋ถ์ ๊ทธ๋ฅ ๊ทธ๋๋ก ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. (uniformํ ๋ถ๋ถ)
๊ทธ๋ฐ๋ฐ ๊ทธ๋ ์ง ์์ ๋ถ๋ถ์ ๋ํด์๋ ์ข ๊บผ๋ ค์ง๋๋ค. (edge ๊ฐ ํฌํจ๋ ๋ถ๋ถ)
์ด์ ์์ญ์ ๋ฐ๋ผ ์กฐ๊ธ ๋ค๋ฅธ filtering์ ์ ์ฉํ๋, ์ ์์ ์ผ๋ก ์ข ๋ค๋ฅด๊ฒ ์ฒ๋ฆฌํ๋,
Adaptive Filter๋ฅผ ์๊ฐํด๋ณผ ์ ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ , ์ด๋ ์ง์ ์ด uniformํ๊ณ ์ด๋ ์ง์ ์ด edge๊ฐ ์๋์ง๋ฅผ ์๋์ผ๋ก ์ธก์ ํ ์ ์์ด์ผ ์๋ฏธ๊ฐ ์๊ฒ ์ฃ .
๊ทธ๊ฒ์ ์ธก์ ํ ์ ์๋ ๊ฐ๋จํ ์งํ๊ฐ ๋ถ์ฐ์ ๋๋ค.
uniformํ ๋ถ๋ถ์ ๋ถ์ฐ๊ฐ์ด ์ข ๋ฎ์ ๊ฒ์ ๋๋ค.
๊ทธ๋ฐ๋ฐ, edge๊ฐ ํฌํจ๋์ด ์๋ค๋ฉด ๋ถ์ฐ์ด ํด ๊ฒ์ ๋๋ค.
๊ทธ๋์, ๋ถ์ฐ ๊ฐ์ด ํฌ๋ค๋ฉด edge, ๋ถ์ฐ ๊ฐ์ด ์๋ค๋ฉด uniformํ ๋ถ๋ถ์ผ๋ก ์๊ฐํด๋ณผ ์ ์์ต๋๋ค.

์ ์์ญ์ filteringํ๋ ์์ญ์ผ๋ก ๋ณด๊ฒ ์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ด ๋ถ๋ถ์ ๋ํด์ ์ฐ์ ๋ถ์ฐ์ ๊ตฌํฉ๋๋ค.
์ด ๋ถ๋ถ์ ๋ถ์ฐ์ด ํฌ๋ฉด edge์ด๊ณ , ํด๋น ๋ถ๋ถ์ average filter๋ฅผ ์ทจํ๋ฉด pixel ๊ฐ์ด ์์๋๋ ์ผ์ด ์ผ์ด๋ ์ ์๋ค๊ณ ํ์ต๋๋ค.
๊ทธ๋์ ์ด๊ฒ์ ๋ํด ์ข ๋ค๋ฅด๊ฒ ์ ์ฉํด๋ณผ ์ ์์ต๋๋ค.
์ผ๋จ ์ ๊ทธ๋ฆผ์์ ๋ณด๋ฉด,
I_G๋ผ๋ noise๋ฅผ ๊ฐ์ง๋ image๊ฐ ์๋ค๊ณ ํฉ์๋ค.
x, y ์์น์ ๋ํด ์ด๋ป๊ฒ ์ฒ๋ฆฌํ ์ง์ ๋ํ ์ด์ผ๊ธฐ๋ฅผ ํด๋ด ์๋ค.
์ฌ๊ธฐ์ ํ๊ท ๊ฐ์ ๊ณ์ฐํ ๊ฒ์ I_G(x, y) = m(x, y)๋ผ๊ณ ํ๊ฒ ์ต๋๋ค.
์ด๊ฒ์ด ์๋ ์ฐ๋ฆฌ๊ฐ ํ๋ average filtering์ด์ฃ .
๊ทธ๋ฐ๋ฐ ์ด x, y ์ง์ ์ด edge๋ฉด risk๊ฐ ์๋ค๊ณ ํ ์ ์์ต๋๋ค.
๊ทธ๋์ ์ด average ๊ฐ๊ณผ ์๋ ๊ฐ์ ์กฐํฉ์ ํ์ฌ ์ฌ์ฉํ๊ฒ ๋ค๋ ๊ฒ์ ๋๋ค.
๋ค์์ ์์์ ํตํด ๊ฐ์ค์น์ ๋ํด์ ์ฐ์ฐ์ ํ๊ฒ ๋ค๋ ๊ฒ์ด์ฃ .

๋ง์ฝ x, y ์ง์ ์ด edge๋ผ๊ณ ํ๋ฉด, ๋ถ์ฐ ๊ฐ์ด ํด ๊ฒ์ด๋,
ํ๊ท ๊ฐ๋ณด๋ค๋ ์๋์ ๊ฐ์ ๋ ์ค์ ์ผ๋ก ๋์ด์ผํ ๊ฒ์ ๋๋ค.
๋ง์ผ, uniformํ ๋ถ๋ถ์ด์๋ค๊ณ ํ๋ฉด average ๊ฐ์ ๊ทธ๋ฅ ์ฐ๋ ๊ฒ ์ข๊ฒ ์ฃ ?
๊ทธ๋์ ์ ์์์์ ๋ณด๋ฉด, m์ธ average ๊ฐ์ noise๋ฅผ ์ ์์ ๋ ์ฉ๋์ด๊ณ , I_G ๊ฐ์ ์๋ pixel ๊ฐ์ ์ด๋ป๊ฒ ์ ์ ์งํ๋์ ๋ํ ๊ฐ์ ๋๋ค.
์ฐ๋ฆฌ๊ฐ edge์ ๋ํ ์ ๋๋ฅผ ์ธก์ ํจ์ ์์ด,
๋ถ์ฐ์ ๊ตฌํด๋ณผ ์ ์๋ค๊ณ ํ๋๋ฐ,
๊ทธ localํ ์์ญ์ ๋ํ ๋ถ์ฐ์ ๊ตฌํ์ ๋,
์ด๊ฒ์ด ํฌ๋ค๋ฉด edge์ผ ํ๋ฅ ์ด ๋์ผ๋, ์ด ๋ถ์ฐ๊ฐ ์์ฒด๋ฅผ weight๋ก ์ฌ์ฉํ๊ฒ ๋ค๋ ๊ฒ์ ๋๋ค.
๊ทธ๋์ edge๋ผ๋ฉด ๋ถ์ฐ ๊ฐ์ด ํฌ๋, ์๋์ ๊ฐ์ด ๋ ๊ฐ์กฐ๊ฐ ๋ ๊ฒ์ ๋๋ค.
๊ทน๋จ์ ์ผ๋ก, ๋ค ๋๊ฐ์ ๊ฐ์ผ๋ก ๋ถ์ฐ์ด 0์ด ๋์์ต๋๋ค.
๊ทธ๋ฌํ ๊ฒฝ์ฐ, average filterํ๋ฏ์ด average ๊ฐ์ ๊ทธ๋๋ก ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ weight์ ํฉ์ 1๋ก ๋ง๋ค์ด์ค์ ์๋์ pixel ๊ฐ์ ๋ณด์กดํด์ค๋๋ค. ๊ทธ๋์ผ ๋ฐ๊ธฐ ๋ณํ๊ฐ ์์ต๋๋ค.
์ ๊ฒฝ์ฐ๋ ์๊ทธ๋ง N์ ์ ๊ณฑ์ด 1์ด์์ ๋๋ฅผ ๊ฐ์ ํ์ฌ ํ ๊ฒ์ ๋๋ค.
๊ทธ๋ฐ๋ฐ, ์๊ทธ๋ง N ์ ๊ณฑ์ image ์ ์ฒด์ ๋ํ ๋ถ์ฐ์ด๋ฏ๋ก, ์ด image์ ๋ฐ๋ผ ๋ถ์ฐ์ด ๋ค๋ฅผ ๊ฒ์ ๋๋ค.
๊ทธ๋ ๊ฒ ์ด ์ ์ฒด image์ ๋ํ ๋ถ์ฐ์ด ์๊ณ , ์ด localํ ์์ญ์ ๋ํ ๋ถ์ฐ์ด ์์ ๊ฒ์ ๋๋ค.
๊ทธ๋ฌ์ ๋, ์ ์ฒด image์ ๋ํ ๋ถ์ฐ์ธ ์๊ทธ๋ง N ์ ๊ณฑ์ 1๋ก ๋๊ณ ๋ณด๋ ๊ฒ์,
ํ์ฌ local ํ ๋ถ๋ถ์ ๋ถ์ฐ์ด ํฐ์ง ์์์ง๋ง์ ๋ณด๊ณ ์ถ์ ๋ ์ฌ์ฉํฉ๋๋ค.

๊ทธ๋ฆฌ๊ณ ์ด ์์์ ์ ์ฒด image์ ๋ํ ๋ถ์ฐ ๋๋น ์ฐ๋ฆฌ๊ฐ ๊ด์ฐฐํ๋ localํ ๋ถ๋ถ์ ๋ถ์ฐ์ด ์ผ๋ง๋ ํฐ์ง๋ฅผ ์๋์ ์ผ๋ก ๋ณด๊ณ ์ถ์ ๋ ์ฌ์ฉํฉ๋๋ค.

๊ทธ๋์ ์์ ๊ฐ์ ์์์ด ๋์ค๊ฒ ๋ฉ๋๋ค.
์ฌ๋ฌ ๊ฐ์ pixel ๊ฐ์ ์กฐํฉํ์ฌ ํ๋๋ก ๋ง๋ค ๋, ๋ฐ๊ธฐ๋ฅผ ๋ฐ๊พธ๊ณ ์ํ๋ ์๋๊ฐ ์๋ค๋ฉด ๋ฌด์กฐ๊ฑด ๊ฐ์ค์น์ ํฉ์ 1๋ก ํด์ค์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค.
์ด๊ฒ์ Wiener Filter๋ผ๊ณ ์ด์ผ๊ธฐํฉ๋๋ค.
๊ทธ๋์ ๊ฒฐ๊ณผ๋ฅผ ์๋์ ๊ฐ์ด ์ดํด๋ด ์๋ค.

์๋ฒฝํ์ง ์์ง๋ง ์๋ณด๋จ ์กฐ๊ธ ๋ ๊ด์ฐฎ๊ฒ ๋์จ๋ค๊ณ ๋ด ๋๋ค.
๊ทธ๋ฌ๋ ์ ๊ฒฐ๊ณผ์ ๊ฐ์ด noise๊ฐ ์์ด์ง์ง ์์ ๋ชจ์ต์ด ๋ณด์ ๋๋ค.
๊ฒฐ๊ตญ pixel ์์น๋ง๋ค weight๋ฅผ ์ฃผ์ด adaptiveํ๊ฒ filtering์ ํ๋ ๋ฐฉ๋ฒ์ด์์ต๋๋ค.
'Artificial Intelligence > Computer Vision' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Computer Vision] Image Warping - Linear Transformation (2) | 2023.05.29 |
---|---|
[Computer Vision] Image Restoration - Bilateral Filter(Adaptive Filtering) (0) | 2023.05.25 |
[Computer Vision] Image Restoration - Salt and Pepper noise (0) | 2023.05.18 |
[Computer Vision] Objectives - JPEG Algorithm (2) (0) | 2023.05.16 |
[Computer Vision] Objectives - JPEG Algorithm (0) | 2023.05.10 |