Histogram Equalization

2022. 10. 8. 21:39ยท๐ŸŒƒ computer vision
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
'๐ŸŒƒ computer vision' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • Image feature matching
  • Spatial Filtering
  • Intensity transformation
  • Line detection
coram22
coram22
  • coram22
    ram2 ๐Ÿš—
    coram22
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (86)
      • ๐Ÿ’ง flutter (22)
      • ๐ŸŽ iOS (18)
      • ๐Ÿฉต CosPro (4)
        • python 2๊ธ‰ (4)
      • ๐Ÿˆ‍โฌ› git (3)
      • ๐Ÿ–ฅ๏ธ react (6)
      • ๐Ÿพ OS (1)
      • ๐Ÿ›œ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ (6)
      • ๐ŸŒƒ computer vision (6)
      • ๐Ÿ“š ๋ฐฑ์ค€ (11)
      • ๐Ÿฃ My Story (1)
      • ๐Ÿ’ป else (8)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๐Ÿˆโ€โฌ› github ๐Ÿˆโ€โฌ›
    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

    • ๐Ÿฑ Github ๐Ÿฑ
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    ์˜ค๋ธ”์™„
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    Xcode
    Git
    UIKit
    ๊ณต์‹๋ฌธ์„œ
    Swift
    React
    ์ปด๋„ค
    ์ •๋‹ต
    Computer Vision
    SwiftUI
    IOS
    FLUTTER
    dart
    ์ค‘๋„ํœดํ•™
    2๊ธ‰
    OpenCV
    Python
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
coram22
Histogram Equalization
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”