Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Histogrammin Tasoitus | Kuvankäsittely OpenCV:llä
Tietokonenäön Perusteet Pythonilla
Osio 2. Luku 5
single

single

Histogrammin Tasoitus

Pyyhkäise näyttääksesi valikon

Yksinkertainen histogrammin tasoitus

Histogrammin tasoitus on tekniikka, jota käytetään parantamaan kuvan yleistä kontrastia. Se toimii jakamalla intensiteettiarvot uudelleen niin, että ne kattavat koko mahdollisen alueen (0–255 8-bittisissä kuvissa). Tämä on erityisen hyödyllistä kuvissa, jotka ovat liian tummia tai liian kirkkaita, sillä se tekee yksityiskohdista näkyvämpiä tasoittamalla pikselien intensiteettien histogrammin.

equalized = cv2.equalizeHist(image)
  • cv2.equalizeHist(image)
    • image: syöteharmaasävykuva (täytyy olla yksikanavainen);
    • Palauttaa uuden kuvan, jossa kontrastia on parannettu venyttämällä ja tasoittamalla histogrammia.
Note
Huomio

Tämä menetelmä on globaali – se parantaa koko kuvan kontrastia tasaisesti, mikä voi johtaa joidenkin alueiden liialliseen korostumiseen ja yksityiskohtien menetykseen toisissa.

Adaptiivinen histogrammin tasoitus (CLAHE)

CLAHE (Contrast Limited Adaptive Histogram Equalization) on kehittyneempi histogrammin tasoituksen muoto, joka toimii pienissä alueissa (laatoissa) koko kuvan sijaan. Parantaa paikallista kontrastia ja estää kohinan liiallisen korostumisen rajoittamalla histogrammin kontrastia jokaisessa laatassa.

clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
clahe_equalized = clahe.apply(image)
  • cv2.createCLAHE(...) luo CLAHE-olion, jossa:
    • clipLimit: kontrastin rajoituksen kynnysarvo (suurempi arvo = enemmän kontrastia);
    • tileGridSize: ruudukon koko, jolla kuva jaetaan laatoiksi (esim. 8x8).
  • clahe.apply(image) soveltaa CLAHE:n syötekuvaan.
Note
Huomio

CLAHE on erityisen tehokas kuvissa, joissa valaistus vaihtelee tai paikallisten yksityiskohtien säilyttäminen on tärkeää, kuten lääketieteellisissä kuvissa tai hämäräkuvauksessa.

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Sinulle on annettu image-muuttuja:

  • Käytä yksinkertaista histogrammin tasoitusta ja tallenna tulos muuttujaan equalized;
  • Määritä CLAHE-luokan olio muuttujaan clahe;
  • Käytä CLAHE-histogrammin tasoitusta ja tallenna tulos muuttujaan clahe_equalized (parametrisuositus: clipLimit=2.0 ja tileGridSize=(8, 8)).

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 5
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt