728x90
๋ฐ˜์‘ํ˜•
728x90

Histogram Equalization ๋ž€?

โžก๏ธ ์šฐ๋ฆฌ ๋ง๋กœ๋Š” histogram์„ ์ •๊ทœํ™” ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

โžก๏ธ ๊ฐ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์˜์ƒ์„ ๊ตฌ์„ฑํ•˜๋Š” ํ”ฝ์…€์˜ ์ „์ฒด ๊ฐœ์ˆ˜๋กœ ๋‚˜๋ˆˆ๋‹ค.

โžก๏ธ bin์˜ ๊ฐœ์ˆ˜๋ฅผ ์ž˜ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

โžก๏ธ ๋ฐ๊ธฐ ๋˜๋Š” color ๊ฐ’์˜ ์ฐจ์ด๋ฅผ ์ด๋ฏธ์ง€์— ์ ์šฉํ•œ ๊ฒƒ์ด๋‹ค.

 

* histogram์ด ํŠน์ • ์˜์—ญ์— ๋„ˆ๋ฌด ์ง‘์ค‘๋˜์–ด ์žˆ์œผ๋ฉด contrast๊ฐ€ ๋‚ฎ์€ ๊ฒƒ์ด๋‹ค. 

** histogram์ด ๊ณจ๊ณ ๋ฃจ ๋ถ„ํฌ๋˜์–ด ์žˆ์„์ˆ˜๋ก high contrast๋ผ๊ณ  ํ•˜๋Š”๋ฐ, high contrast๋ฅผ ์ข‹์€ ์ด๋ฏธ์ง€๋ผ๊ณ  ํ•œ๋‹ค.

low contrast          vs.       high contrast

 

 

 

Histogram ๊ณผ bin

[๋ฌธ์ œ]

๋งŒ์•ฝ, ๋‹ค์Œ ํ‘œ์™€ ๊ฐ™์€ ์ด๋ฏธ์ง€๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž. ์ด ๋•Œ intensity level์€ 16[0,15], bin์˜ ๊ฐœ์ˆ˜๊ฐ€ 4๋ผ๋ฉด, ๊ฐ bin์€ ?

[๋ฌธ์ œ]๋ฅผ ์œ„ํ•œ ํ‘œ

[ํ•ด์„ค]

์ด ๋•Œ ํ•ด๋‹น ์ด๋ฏธ์ง€๋Š” 5 x 6์œผ๋กœ ์ด 30๊ฐœ์˜ ํ”ฝ์…€์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

์ „์ฒด์ ์ธ ๋กœ์ง์€ ๊ฐ bin์— ํ•ด๋‹นํ•˜๋Š” ํ”ฝ์…€์˜ ์ˆ˜๋ฅผ ์ „์ฒด ํ”ฝ์…€์˜ ์ˆ˜๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์ด๋‹ค.

๋˜ํ•œ ๊ฐ bin์€ intensity level์˜ ๋ฒ”์œ„ ๋‚ด์—์„œ ์ฃผ์–ด์ง„ bin์˜ ๊ฐœ์ˆ˜์ธ 4๊ฐœ๋กœ ๋‚˜๋ˆ„๋ฉด ๋œ๋‹ค. 

 

bin์˜ ๊ฐœ์ˆ˜๊ฐ€ 4๊ฐœ ์ด๋ฏ€๋กœ, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

  โžก๏ธ ์ฒซ ๋ฒˆ์งธ bin[0-3] = 28 / 30

  โžก๏ธ ๋‘ ๋ฒˆ์งธ bin[4-7] = 1 / 30

  โžก๏ธ ์„ธ ๋ฒˆ์งธ bin[8-11] = 1 / 30

  โžก๏ธ ๋„ค ๋ฒˆ์งธ bin[12-15] = 0 / 30

 

์œ„ ํ‘œ์—์„œ ๋ณด์ด๋“ฏ,

0-3์— ํ•ด๋‹นํ•˜๋Š” ํ”ฝ์…€์ด 28๊ฐœ,

4-7์— ํ•ด๋‹นํ•˜๋Š” ํ”ฝ์…€์ด 1๊ฐœ,

8-11์— ํ•ด๋‹นํ•˜๋Š” ํ”ฝ์…€์ด 1๊ฐœ,

12-15์— ํ•ด๋‹นํ•˜๋Š” ํ”ฝ์…€์ด 0๊ฐœ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

 

 

 

Histogram Equalization ์ ์šฉ

1. histogram์„ ๊ณ„์‚ฐํ•œ๋‹ค.

2. ํžˆ์Šคํ† ๊ทธ๋žจ์„ ์ตœ๋Œ€ํ•œ ํ‰ํ‰ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋Š” ํ•จ์ˆ˜๋ฅผ ์ฐพ๋Š”๋‹ค. (mapping function)

3. ์ด๋ฏธ์ง€์— mapping function์„ ์ ์šฉํ•œ๋‹ค.

 

[์‚ฌ์šฉ ์˜ˆ]

equalizeHist( image, hist_image ); // ์ด๋ ‡๊ฒŒ input๊ณผ output๋งŒ ์ ์œผ๋ฉด ๋œ๋‹ค.
imshow ("hist equalized image", hist_image);

 

 

* histogram equalization์€ ํ•ญ์ƒ ์ด๋ฏธ์ง€๋ฅผ ๋” ์„ ๋ช…ํ•˜๊ฒŒ ํ•˜์ง€๋งŒ์€ ์•Š๋Š”๋‹ค. ํŠนํžˆ ํŠน์ • ๋ฒ”์œ„์˜ data๊ฐ€ dominantํ•  ๋•Œ๋Š” ์˜คํžˆ๋ ค ์ž˜ ๋ณด์ด์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.

 

 

 

728x90
๋ฐ˜์‘ํ˜•

'๐ŸŒƒ computer vision' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Image feature matching  (0) 2022.10.30
Spatial Filtering  (0) 2022.10.08
Intensity transformation  (2) 2022.10.08
Line detection  (0) 2022.09.29
Edge Detection  (0) 2022.09.27
728x90
๋ฐ˜์‘ํ˜•
728x90

intensity transformation๋ž€? 

 โžก๏ธ ์ด๋ฏธ์ง€์˜ ๋ฐ๊ธฐ๋ฅผ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ.

 

 

 

intensity transformation์˜ ์ข…๋ฅ˜

intensity transformation์—๋Š” ํฌ๊ฒŒ 3๊ฐ€์ง€ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋‹ค.

 

1. negative 

 

- ์ด๋ฏธ์ง€์˜ ์–ด๋‘์šด ์˜์—ญ์„ ๋ฐ์€ ์˜์—ญ์œผ๋กœ, ์ด๋ฏธ์ง€์˜ ๋ฐ์€ ์˜์—ญ์„ ์–ด๋‘์šด ์˜์—ญ์œผ๋กœ ๋ฐ˜์ „ ์‹œํ‚ค๋Š” ๊ฒƒ.

 

[๊ณต์‹] 

โžก๏ธ L - 1 - r

r : input, ์˜์ƒ์˜ intensity level์ด [0, L-1] ์‚ฌ์ด์ธ ๊ฒฝ์šฐ

 

 

 

2. log transformation

- ์–ด๋‘์šด ์˜์—ญ์— ์ˆจ์–ด ์žˆ๋Š” detail์„ ๋” ์„ ๋ช…ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์— ์ž์ฃผ ์‚ฌ์šฉ๋œ๋‹ค.

- ๋‹จ์ˆœํžˆ ์˜์ƒ์„ ๋ฐ๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค.

- ๋ฐ์€ ๋ถ€๋ถ„์˜ detail์€ ์ค„์–ด๋“ค๊ณ , ์–ด๋‘์šด ์˜์—ญ์˜ detail์€ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

- ์–ด๋‘์šด ๋ถ€๋ถ„์˜ contrast๋ฅผ ๋†’์—ฌ์„œ ๋” ์„ ๋ช…ํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

 

[๊ณต์‹] 

โžก๏ธ C log (1+r)

c: ์ž„์˜์˜ ์ƒ์ˆ˜, r : input

 

 

3. gamma transforamtion

- Γ(gamma) ์˜ ๊ฐ’์— ๋”ฐ๋ผ ๋ฐ์€ ๋ถ€๋ถ„์˜ detail์„ ์˜ฌ๋ฆด ์ˆ˜๋„ ์žˆ๊ณ , ์–ด๋‘์šด ๋ถ€๋ถ„์˜ detail์„ ์˜ฌ๋ฆฌ ์ˆ˜ ์žˆ๋‹ค.

- Γ > 1์ธ ๊ฒฝ์šฐ : ๋ฐ์€ ๋ถ€๋ถ„์˜ detail์„ ์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค.

- Γ < 1์ธ ๊ฒฝ์šฐ : ์–ด๋‘์šด ๋ถ€๋ถ„์˜ detail์„ ์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค.

- Γ = 1์ธ ๊ฒฝ์šฐ : input ์ด๋ฏธ์ง€์™€ output ์ด๋ฏธ์ง€๊ฐ€ ๋™์ผํ•˜๋‹ค.

 

[๊ณต์‹] 

โžก๏ธ Cr^ Γ

c: ์ž„์˜์˜ ์ƒ์ˆ˜, r : input,  Γ: gamma ๊ฐ’.

 

 

 

[์ ์šฉ ๊ฒฐ๊ณผ]

 

728x90
๋ฐ˜์‘ํ˜•

'๐ŸŒƒ computer vision' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Image feature matching  (0) 2022.10.30
Histogram Equalization  (0) 2022.10.08
Spatial Filtering  (0) 2022.10.08
Line detection  (0) 2022.09.29
Edge Detection  (0) 2022.09.27

+ Recent posts