Announcement

Collapse
No announcement yet.

Histogrammäqualisierung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Histogrammäqualisierung

    Was bedeuten im Skriptum Hsoll(0) bzw Hsoll(1) und wie berechnet man diese ?
    Könnte bitte jemand anhand eines Beispiels zeigen wie der Histogrammäqualisierung Algorithmus funktioniert , wäre wirklich sehr nett
    MILAN - Tu sei tutta la mia vita!
    schön' Tach noch, ne

  • #2
    Originally posted by enrimilan View Post
    Was bedeuten im Skriptum Hsoll(0) bzw Hsoll(1) und wie berechnet man diese ?
    Könnte bitte jemand anhand eines Beispiels zeigen wie der Histogrammäqualisierung Algorithmus funktioniert , wäre wirklich sehr nett
    Prinzipiell geht es bei der Histogrammäqualisierung um die Verstärkung des Kontrastes. Bei Bildern mit einem niedrigen Kontrast gibt es eine Anhäufung von naheliegenden Helligkeitswerten, d.h. dass zum Beispiel 99% aller Helligkeitswerte in einem Bild im Helligkeitsintervall [128 140] ist. Um einen guten Kontrast zu erreichen wird versucht naheliegende Helligkeitswerte mit vielen Vorkommnissen möglichst weit voneinander zu bringen. Dies wird dadurch erreicht, dass man sich das Histogramm als eine Wahrscheinlichkeitsverteilung (engl. probability density function, kurz pdf) vorstellt und diese versucht möglichst nahe an eine Uniformverteilung anzunähern. Wenn du dir die Verteilungsfunktion (engl. cumulative density function, kurz cdf) einer Uniformverteilung anschaust, so hast du eine regelmäßige Treppenfunktion von 0 bis 1 für alle Helligkeitswerte. Und genau durch das "Verschieben" der angehäuften Helligkeitswerte nähert man sich der cdf der Uniformverteilung.

    Damit du dir das besser vorstellen kannst, schau dir die Bilder im folgenden Wikipedia Link an: LINK.

    So kannst du dir eigentlich den Algorithmus vorstellen. Ganz genau wird dich niemand fragen was zb. Hsoll ist etc. , dafür gibt es schon längst Libraries mit Implementierungen. Wenn du aber willst, kann ich es mir genau anschauen und es dir erklären.
    Last edited by 3shizzle; 04-04-2012, 00:11. Reason: kleiner Fehler
    -------------------------------------------------
    Cerman Martin

    C++/Computer Vision Dev at Anyline.io

    Ex EVC Tutor 2013-14
    Ex EDBV Tutor 2014
    Ex EFME Tutor 2011-14

    Comment


    • #3
      Also eigentlich ist im Skriptum ja ein Beispiel gegeben - das Bild, bzw. der Bildausschnitt in C2 (Grauwerte 107-206) wird äqualisiert. Hsoll(0) und Hsoll(1) ist der gewünschte Wert für Grauwert 0 bzw. 1 im Histogramm nach der Äqualisierung, also wie oft Grauwert 0 bzw. 1 nach der Äqualisierung im Bild vorkommen. In Punkt C5 wird dann die Äqualisierung durchgeführt. Nach der Äqualisierung liegen die vorkommenden Grauwerte im Interval [0,255]. Für den Grauwert 0 werden nun alle Grauwerte beginnend beim kleinsten vorkommenden Grauwert (dann aufsteigend) auf 0 gesetzt, bis die Anzahl Hsoll(0) erreicht ist. Danach werden dem nächsten Grauwert in der gleichen Weise Pixel zugewiesen. Dabei kann es passieren, dass man entweder die Pixel eines Grauwerts auf 2 aufeinnanderfolgende Grauwerte aufteilen muss oder man rundet.
      Ines Janusch
      -------------------------
      EVC Tutorin 2014

      Comment


      • #4
        Ich finde, dieses Video zeigt es ganz gut (anschaulich):

        Introduction to Histogram Equalization
        Thomas Lang
        EVC Tutor 2013

        Comment


        • #5
          edit: hat sich erübrigt
          Last edited by HerrFuchs; 24-04-2012, 19:35.

          Comment

          Working...
          X