Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Histogramutjämning | Bildbehandling med OpenCV
Grunder i Datorseende

bookHistogramutjämning

Enkel histogramutjämning

Histogramutjämning är en teknik som används för att förbättra den globala kontrasten i en bild. Metoden fungerar genom att omfördela intensitetsvärdena så att de täcker hela det möjliga intervallet (0 till 255 i 8-bitarsbilder). Detta är särskilt användbart för bilder som är för mörka eller för ljusa, eftersom det gör detaljer mer synliga genom att utjämna histogrammet för pixelintensiteter.

equalized = cv2.equalizeHist(image)
  • cv2.equalizeHist(image)
    • image: inmatad gråskalebild (måste vara enkelkanalig);
    • Returnerar en ny bild med förbättrad kontrast genom att sträcka ut och platta till histogrammet.
Note
Observera

Denna metod är global – den förbättrar kontrasten i hela bilden enhetligt, vilket kan leda till överförstärkning i vissa områden och förlust av detaljer i andra.

Adaptiv histogramutjämning (CLAHE)

CLAHE (Contrast Limited Adaptive Histogram Equalization) är en avancerad version av histogramutjämning som arbetar på små regioner (kakel) av bilden istället för hela bilden. Den förbättrar lokal kontrast och undviker att förstärka brus för mycket genom att begränsa histogramkontrasten inom varje kakel.

clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
clahe_equalized = clahe.apply(image)
  • cv2.createCLAHE(...) skapar ett CLAHE-objekt med:
    • clipLimit: tröskelvärde för kontrastbegränsning (högre värde = mer kontrast);
    • tileGridSize: storlek på rutnätet för att dela upp bilden i kakel (t.ex. 8x8).
  • clahe.apply(image) tillämpar CLAHE på inmatningsbilden.
Note
Notering

CLAHE är särskilt effektivt för bilder med varierande ljusförhållanden eller där bevarande av lokala detaljer är viktigt, såsom medicinsk avbildning eller fotografering i svagt ljus.

Uppgift

Swipe to start coding

Du har fått en variabel image:

  • Applicera enkel histogramutjämning och spara i equalized;
  • Definiera CLAHE-klassobjekt i variabeln clahe;
  • Applicera CLAHE-histogramutjämning och spara i clahe_equalized (parameterrekommendation: clipLimit=2.0 och tileGridSize=(8, 8)).

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 5
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

What are the main differences between standard histogram equalization and CLAHE?

When should I use CLAHE instead of regular histogram equalization?

Can you explain how the clipLimit and tileGridSize parameters affect the result?

close

Awesome!

Completion rate improved to 3.45

bookHistogramutjämning

Svep för att visa menyn

Enkel histogramutjämning

Histogramutjämning är en teknik som används för att förbättra den globala kontrasten i en bild. Metoden fungerar genom att omfördela intensitetsvärdena så att de täcker hela det möjliga intervallet (0 till 255 i 8-bitarsbilder). Detta är särskilt användbart för bilder som är för mörka eller för ljusa, eftersom det gör detaljer mer synliga genom att utjämna histogrammet för pixelintensiteter.

equalized = cv2.equalizeHist(image)
  • cv2.equalizeHist(image)
    • image: inmatad gråskalebild (måste vara enkelkanalig);
    • Returnerar en ny bild med förbättrad kontrast genom att sträcka ut och platta till histogrammet.
Note
Observera

Denna metod är global – den förbättrar kontrasten i hela bilden enhetligt, vilket kan leda till överförstärkning i vissa områden och förlust av detaljer i andra.

Adaptiv histogramutjämning (CLAHE)

CLAHE (Contrast Limited Adaptive Histogram Equalization) är en avancerad version av histogramutjämning som arbetar på små regioner (kakel) av bilden istället för hela bilden. Den förbättrar lokal kontrast och undviker att förstärka brus för mycket genom att begränsa histogramkontrasten inom varje kakel.

clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
clahe_equalized = clahe.apply(image)
  • cv2.createCLAHE(...) skapar ett CLAHE-objekt med:
    • clipLimit: tröskelvärde för kontrastbegränsning (högre värde = mer kontrast);
    • tileGridSize: storlek på rutnätet för att dela upp bilden i kakel (t.ex. 8x8).
  • clahe.apply(image) tillämpar CLAHE på inmatningsbilden.
Note
Notering

CLAHE är särskilt effektivt för bilder med varierande ljusförhållanden eller där bevarande av lokala detaljer är viktigt, såsom medicinsk avbildning eller fotografering i svagt ljus.

Uppgift

Swipe to start coding

Du har fått en variabel image:

  • Applicera enkel histogramutjämning och spara i equalized;
  • Definiera CLAHE-klassobjekt i variabeln clahe;
  • Applicera CLAHE-histogramutjämning och spara i clahe_equalized (parameterrekommendation: clipLimit=2.0 och tileGridSize=(8, 8)).

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 5
single

single

some-alt