Histogramm-Differenz

Histogramm-Differenz

Die Histogramm-Differenz (Abkürzung HD) ist eine positive Zahl, die durch Bildung der Differenz zweier Histogramme entsteht. Sie dient als Maß für die Unterschiedlichkeit zweier Histogramme und findet Anwendung in der Schnitterkennung und der Bildverarbeitung.

Man unterscheidet drei Formen von Histogramm-Differenzen: die absolute Histogramm-Differenz HDabs, die quadrierte Histogramm-Differenz HDsqu und die absolute Differenz der kumulierten Histogramme HDEMD. Spricht man von „der“ Histogramm-Differenz, so ist stets die absolute Histogramm-Differenz gemeint. Die drei Formen der Histogramm-Differenz unterscheiden sich hinsichtlich ihrer Empfindlichkeit gegenüber Unterschieden zwischen den Histogrammen.

Mathematische Grundlagen

Histogramme sind Abbildungen von einer Definitionsmenge in eine Wertemenge H: \mathbb{D} \to \mathbb{W}.

In der Bildverarbeitung und Schnitterkennung entspricht die Definitionsmenge der Menge aller möglichen Farbwerte des Bildes; da in der Regel Grauwert-Bilder mit einer Farbtiefe von 8 Bit verwendet werden, ist die Definitionsmenge hier meist durch \mathbb{D}=\{0, 1, ..., 255\} \subset \mathbb{N}_0 gegeben. Der Wertebereich entspricht dann der Größe des Bildes: \mathbb{W}=\{0, 1, ..., h \cdot b\} \subset \mathbb{N}_0, wenn h der Höhe und b der Breite des Bildes in Pixeln entspricht. Der Wert des Histogramms an der Stelle d gibt dann an, wie viele Pixel des Bildes die Helligkeit d haben.

Ein kumuliertes Histogramm ist eine alternative Darstellungsform eines Histogramms. Definitionsmenge und Wertebereich bleiben gleich, das kumulierte Histogramm ergibt sich aus der Formel:

K(i)=\sum_{d<i}^{} H(d)
Kumulierte Histogramme werden vor allem von der Schnitterkennung verwendet, denn sie sind unempfindlicher für kleinere Unterschiede in der Helligkeit zweier Bilder. In der Bildverarbeitung und Schnitterkennung gibt der Wert des kumulierten Histogramms an der Stelle d an, wie viele Pixel des Bildes die Helligkeit d haben oder dunkler sind.

Die drei Histogramm-Differenzen sind definiert durch:

  • absolute Histogramm-Differenz:
HD_{abs}=\sum_{d\in\mathbb{D}} \left| H_2(d)-H_1(d) \right|
  • quadrierte Histogramm-Differenz:
HD_{squ}=\sum_{d\in\mathbb{D}} \left( H_2(d)-H_1(d) \right)^2
  • kumulierte Histogramm-Differenz:
HD_{EMD}=\sum_{d\in\mathbb{D}} \left| K_2(d)-K_1(d) \right|

Alle drei Differenzen sind positiv semidefinit, also stets \ge0.

Umsetzung in der Informatik

Bilder und Histogramme werden in der Informatik im Allgemeinen durch die folgenden Datentypen repräsentiert:

 type Bild {
    int Breite;
    int Hoehe;
    int Pixel[0..Breite][0..Hoehe];
 }
 
 long Histogramm[0..d-1];

Hierbei bezeichnet w die Breite und h die Höhe des Bildes in Pixeln, während d die Anzahl aller möglichen Farbwerte der Bilder bezeichnet.

Der Algorithmus zur Ermittlung der Histogramm-Differenz setzt sich dann aus den folgenden Teilen zusammen:

 // 1.) Histogramm ermitteln:
 Histogramm berechneHistogramm(Bild B)
 {
    Histogramm H;
    For x <- 0 to B.Hoehe - 1 do
       For y <- 0 to B.Breite - 1 do
          H<nowiki>[B.Pixel[x][y]] <- H[B.Pixel[x][y]]</nowiki> + 1
    return H;
 }
 
 // 2.) Kumuliertes Histogramm ermitteln:
 Histogramm berechneKumuliertesHistogramm(Histogramm H)
 {
    Histogramm K;
    K[0] <- H[0];
    For i <- 1 to MaxColorValue do
       K[i] <- K[i-1] + H[i]
    return K;
 }
 
 // 3.) Differenz zweier Histogramme oder kumulierter Histogramme bilden:
 int berechneHistogrammDifferenz(Histogramm H1, Histogramm H2)
 {
    int HD_abs, HD_squ <- 0;
    For i <- 0 to MaxColorValue do
       HD_abs <- HD_abs + abs(H2[i] - H1[i])
    HD_squ <- HD_abs^2;
    return HD_abs;
    // oder: return HD_squ;
 }

Der Algorithmus hat eine Komplexität von \Theta(b,h,f)=b\cdot h+f, wobei b die Breite und h die Höhe der Bilder in Pixeln und f die Anzahl der verschiedenen Farben bezeichnet.


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Schnitterkennung — Als Schnitterkennung bezeichnet man im Fachgebiet Multimediatechnik der Informatik das automatische Erkennen von Schnitten in einem digitalen Video. Inhaltsverzeichnis 1 Anwendungszweck 2 Harte und weiche Schnitte 3 Verfahren …   Deutsch Wikipedia

  • Klasseneinteilung (Statistik) — Klasseneinteilung oder Klassierung bezeichnet in der Statistik die Einteilung von Merkmalswerten bzw. statistischen Reihen in disjunkte Gruppen, die sogenannten Klassen. Jedes Element der untersuchten Gesamtheit wird in Abhängigkeit von seinem… …   Deutsch Wikipedia

  • Tone Reproduction — Tone Mapping oder Tone Reproduction bezeichnet die Dynamikkompression von HDR Bildern, also von digitalen Bildern mit hohem Helligkeitsumfang. Beim Tone Mapping wird der Kontrastumfang eines HDR Bildes verringert, um es auf herkömmlichen… …   Deutsch Wikipedia

  • Tonemapping — Tone Mapping oder Tone Reproduction bezeichnet die Dynamikkompression von HDR Bildern, also von digitalen Bildern mit hohem Helligkeitsumfang. Beim Tone Mapping wird der Kontrastumfang eines HDR Bildes verringert, um es auf herkömmlichen… …   Deutsch Wikipedia

  • Tone Mapping — Tone Mapping, Tone Reproduction oder Dynamikkompression sind synonyme Begriffe, die die Kompression des Dynamikumfangs von Hochkontrastbildern (high dynamic range images) bezeichnen, also von digitalen Bildern mit hohem Helligkeitsumfang. Beim… …   Deutsch Wikipedia

  • KS-Test — Der Kolmogorow Smirnow Anpassungstest, KS Test oder KSA Test (nach Andrei Nikolajewitsch Kolmogorow und Nikolaj Wassiljewitsch Smirnow) ist ein statistischer Test auf Übereinstimmung zweier Wahrscheinlichkeitsverteilungen. Das kann ein Vergleich… …   Deutsch Wikipedia

  • Kolmogoroff-Smirnoff-Anpassungstest — Der Kolmogorow Smirnow Anpassungstest, KS Test oder KSA Test (nach Andrei Nikolajewitsch Kolmogorow und Nikolaj Wassiljewitsch Smirnow) ist ein statistischer Test auf Übereinstimmung zweier Wahrscheinlichkeitsverteilungen. Das kann ein Vergleich… …   Deutsch Wikipedia

  • Kolmogoroff-Smirnoff-Test — Der Kolmogorow Smirnow Anpassungstest, KS Test oder KSA Test (nach Andrei Nikolajewitsch Kolmogorow und Nikolaj Wassiljewitsch Smirnow) ist ein statistischer Test auf Übereinstimmung zweier Wahrscheinlichkeitsverteilungen. Das kann ein Vergleich… …   Deutsch Wikipedia

  • Kolmogoroff-Smirnow-Test — Der Kolmogorow Smirnow Anpassungstest, KS Test oder KSA Test (nach Andrei Nikolajewitsch Kolmogorow und Nikolaj Wassiljewitsch Smirnow) ist ein statistischer Test auf Übereinstimmung zweier Wahrscheinlichkeitsverteilungen. Das kann ein Vergleich… …   Deutsch Wikipedia

  • Kolmogorov-Smirnov-Anpassungstest — Der Kolmogorow Smirnow Anpassungstest, KS Test oder KSA Test (nach Andrei Nikolajewitsch Kolmogorow und Nikolaj Wassiljewitsch Smirnow) ist ein statistischer Test auf Übereinstimmung zweier Wahrscheinlichkeitsverteilungen. Das kann ein Vergleich… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”