update compression slides with german terminology

- add lead slide "Kompression"
- rename to "Verlustfrei vs. Verlustbehaftet"
- rename to "Verlustfrei: Lauflängenkodierung (RLE)"
- merge duplicate lossy slides into "Verlustbehaftet: Der Trick"
- add hexed.it QR code and link
This commit is contained in:
2025-12-30 17:20:00 +01:00
parent 1b9b2f315a
commit 3cd0636748
2 changed files with 73 additions and 81 deletions

View File

@@ -99,20 +99,20 @@ Hochschule der Medien Stuttgart
--- ---
![bg right:40%](./assets/matrix-code.png) ![bg right:30%](./assets/matrix-code.png)
# WTF!? Auflösung # What the HEX-Code
``` ```
89 50 4E 47 ... 89 50 4E 47 ...
``` ```
| Hex | Dezimal | ASCII | | Binär | Hex | Dez | ASCII |
|-----|---------|-------| |-------|-----|-----|-------|
| `89` | 137 | ✗ (> 127, nicht druckbar) | | `1000 1001` | `89` | 137 | ✗ (> 127) |
| `50` | 80 | **P** | | `0101 0000` | `50` | 80 | **P** |
| `4E` | 78 | **N** | | `0100 1110` | `4E` | 78 | **N** |
| `47` | 71 | **G** | | `0100 0111` | `47` | 71 | **G** |
**PNG**-Signatur! (Das `89` markiert: "Ich bin binär, kein Text!") **PNG**-Signatur! (Das `89` markiert: "Ich bin binär, kein Text!")
@@ -559,20 +559,32 @@ Chaos: Verschiedene Standards für verschiedene Sprachen
# Unicode: Ein Standard für alle # Unicode: Ein Standard für alle
**Unicode (1991):** **Unicode (1991):** Jedes Schriftsystem der Welt
Jedes Schriftsystem der Welt
**>150.000 Zeichen:** **>150.000 Zeichen:**
* Latein, Kyrillisch, Arabisch, Chinesisch, Japanisch... - Latein, Kyrillisch, Arabisch, Chinesisch, Japanisch...
* Mathematische Symbole, Emoji, historische Schriften - Mathematische Symbole, Emoji, historische Schriften
* **UTF-8:** Variable Länge (1-4 Bytes pro Zeichen)
**UTF-8:** Variable Länge (1-4 Bytes pro Zeichen)
- **Zeichen 0-127: identisch mit ASCII** (Abwärtskompatibilität!)
- Umlaute: 2 Bytes · CJK: 3 Bytes · Emoji: 4 Bytes
<!-- <!--
Unicode Consortium: Non-Profit seit 1991 Unicode Consortium: Non-Profit seit 1991
Aktuell: Unicode 16.0 (2024) Aktuell: Unicode 16.0 (2024)
UTF-8 = Unicode Transformation Format, 8-bit UTF-8 = Unicode Transformation Format, 8-bit
ASCII-kompatibel: "A" = 1 Byte (rückwärtskompatibel)
Umlaute: "ä" = 2 Bytes, Chinesisch: 3 Bytes, Emoji: 4 Bytes WICHTIG für Kontext zur ASCII-Folie:
- Die ersten 128 Zeichen in UTF-8 sind EXAKT ASCII
- Deshalb funktioniert alter ASCII-Code noch heute
- UTF-8 ist der Grund, warum ASCII nie verschwinden wird
- "A" in ASCII = "A" in UTF-8 = 0x41 = 65 dezimal
Byte-Längen:
- ASCII-Zeichen (0-127): 1 Byte
- Umlaute, diakritische Zeichen: 2 Bytes
- Chinesisch, Japanisch, Koreanisch: 3 Bytes
- Emoji, seltene Zeichen: 4 Bytes
--> -->
--- ---
@@ -728,6 +740,8 @@ Windows vertraut der Endung, aber "file" (Linux) liest Magic Number
--- ---
![bg right:25%](./assets/qr/hexed-it.png)
# Hands-On: WTF Files # Hands-On: WTF Files
**Aufgabe (30 Min):** **Aufgabe (30 Min):**
@@ -739,7 +753,7 @@ Windows vertraut der Endung, aber "file" (Linux) liest Magic Number
4. Identifiziere Format (Magic Number) 4. Identifiziere Format (Magic Number)
5. Benenne um und öffne 5. Benenne um und öffne
**Tools:** hexed.it (online), HxD, Hex Fiend, Bless **Tools:** [hexed.it](https://hexed.it) (online), HxD, Hex Fiend, Bless
<!-- <!--
Praktische Phase: Studierende arbeiten selbst Praktische Phase: Studierende arbeiten selbst
@@ -888,6 +902,13 @@ KOMPRESSION nutzt beide Achsen:
--- ---
<!-- _class: lead -->
# Kompression
## Weniger Daten, gleiche(?) Information
---
<!-- _header: '' --> <!-- _header: '' -->
<!-- _footer: '' --> <!-- _footer: '' -->
@@ -903,96 +924,67 @@ Visualisierung der beiden Philosophien
<!-- _class: klausur --> <!-- _class: klausur -->
<!-- _footer: '' --> <!-- _footer: '' -->
# Kompression: Zwei Philosophien # Verlustfrei vs. Verlustbehaftet
| | Lossless | Lossy | | | Verlustfrei (Lossless) | Verlustbehaftet (Lossy) |
|---|---|---| |---|---|---|
| **Prinzip** | Redundanz entfernen | Irrelevanz entfernen | | **Prinzip** | **Redundanz** entfernen | **Irrelevanz** entfernen |
| **Reversibel** | Ja (bitgenau) | Nein | | **Reversibel** | Ja (Original wiederherstellbar) | Nein (Daten unwiederbringlich weg) |
| **Kompression** | 30-50% | 80-99% | | **Reduktion** | 30-50% | 80-99% |
| **Algorithmen** | RLE, Huffman, LZW, DEFLATE | DCT, Psychoakustik | | **Formate** | ZIP, PNG, FLAC, GIF | JPEG, MP3, H.264/H.265 |
**Lossless:** ZIP, PNG, FLAC, GIF **Faustregel:** Code/Archiv → verlustfrei · Medien → verlustbehaftet
**Lossy:** JPEG, MP3, AAC, H.264, H.265, AV1
**Entscheidung:** Archiv/Code → Lossless, Medien → Lossy
<!-- <!--
REDUNDANZ: Wiederholende Muster (z.B. "AAAA" → "4A") REDUNDANZ: Wiederholende Muster kompakter darstellen (z.B. "AAAA" → "4×A")
IRRELEVANZ: Für Menschen nicht wahrnehmbar (Psychoakustik, Psychovisuell) IRRELEVANZ: Für Menschen nicht wahrnehmbar (Psychoakustik, Psychovisuell)
LOSSLESS-ALGORITHMEN:
- RLE (Run-Length Encoding): Wiederholungen zählen KLAUSURRELEVANT:
- Huffman: Häufige Zeichen = kurze Codes - Verlustfrei = Original 1:1 wiederherstellbar
- LZW: Wörterbuch aufbauen (GIF, TIFF) - Verlustbehaftet = Information geht verloren, aber kaum wahrnehmbar
- DEFLATE: Huffman + LZ77 (ZIP, PNG, gzip) - Redundanz vs. Irrelevanz ist der Kernunterschied!
LOSSY-ALGORITHMEN:
- DCT (Discrete Cosine Transform): Frequenzanalyse (JPEG, MP3)
- Psychoakustik: Maskierungseffekte nutzen (MP3, AAC)
- Bewegungskompensation: Nur Differenzen speichern (H.264, H.265)
PRÜFUNGSRELEVANT: Unterschied Redundanz vs. Irrelevanz, Beispiele für beide Kategorien
--> -->
--- ---
# Lossless: Run-Length Encoding # Verlustfrei: Lauflängenkodierung (RLE)
## Lauflängenkodierung
**Original:** **Original:** `AAAAABBBCCCCCCCC` (16 Zeichen)
```
AAAAABBBCCCCCCCC
```
**Komprimiert:** **Komprimiert:** `5A3B8C` (6 Zeichen) → **62% kleiner**
```
5A 3B 8C
```
**Ersparnis:** 16 → 6 Zeichen (62% Reduktion) **Prinzip:** Wiederholungen zählen statt wiederholen
<!-- <!--
RLE = Run-Length Encoding = Lauflängenkodierung RLE = Run-Length Encoding = Lauflängenkodierung
Simplest Compression Algorithm Einfachster Kompressionsalgorithmus
Gut für repetitive Daten (Fax, simple Grafiken) Gut für: Fax, einfache Grafiken, Icons
Schlecht für chaotische Daten (Fotos, Audio) Schlecht für: Fotos, Audio (zu chaotisch)
--> -->
--- ---
# Lossy: Der Trick # Verlustbehaftet: Der Trick
**Kernidee:** Wirf weg, was der Mensch eh nicht wahrnimmt **Kernidee:** Entferne, was Menschen nicht wahrnehmen
**JPEG:** Schwächen des Auges | Format | Nutzt Schwächen von... | Fachbegriff |
* Helligkeit besser als Farbe wahrgenommen |--------|------------------------|-------------|
* Große Flächen besser als feine Details | **JPEG** | Auge (Farbe < Helligkeit) | Psychovisuell |
* **→ Psychovisuell** | **MP3** | Ohr (Maskierungseffekte) | Psychoakustik |
<!-- <!--
Auditory Masking: Lauter 1000 Hz-Ton → leise 950 Hz unhörbar PSYCHOVISUELL (JPEG):
Visuelle Masking: Starker Kontrast überstrahlt Details - Auge nimmt Helligkeit besser wahr als Farbe
Kompression = Modell der menschlichen Wahrnehmung
-->
---
# Lossy: Der Trick
**Kernidee:** Wirf weg, was der Mensch eh nicht wahrnimmt
**JPEG:** Schwächen des Auges
- Helligkeit besser als Farbe wahrgenommen
- Große Flächen besser als feine Details - Große Flächen besser als feine Details
- **→ Psychovisuell** - Daher: Farbinformation stärker komprimiert
**MP3:** Schwächen des Ohrs PSYCHOAKUSTIK (MP3):
* Mittlere Frequenzen besser als hohe/tiefe - Mittlere Frequenzen besser als hohe/tiefe
* Laute Töne "maskieren" leise Töne - Laute Töne "maskieren" leise Töne in der Nähe
* **→ Psychoakustik** - Auditory Masking: Lauter 1000 Hz-Ton leise 950 Hz unhörbar
<!-- KERNKONZEPT: Kompression = Modell der menschlichen Wahrnehmung
Auditory Masking: Lauter 1000 Hz-Ton → leise 950 Hz unhörbar
Visuelle Masking: Starker Kontrast überstrahlt Details
Kompression = Modell der menschlichen Wahrnehmung
--> -->
--- ---

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 B