Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
Lauflängencodierung - einfach erklärt
Das Wichtigste aus dem Video
Tipp auf eine Zeit – das Video springt genau dorthin.
Transkriptautomatisch erstellt · 59 Zeilen
- hallo zusammen in diesem Video lernen wir wie man schwarz-weiß Bilder effizient im Computer speichern kann hier seht ihr ein schwarz-weiß Bild es
- es wurde in das Bild ganz ganz stark rangezoomt so dass wir die einzelnen Pixel also Bildpunkte sehen können hier weiße Pixel und die schwarzen Pixel sind
- schraffiert hier dargestellt wenn man ein solches Bild speichern möchte geht man so vor dass man einfach jeden einzelnen Bildpunkt
- speichert für einen weißen Bildpunkt für ein weißes Pixel nehme ich eine 0 und für einen schwarzes eine 1 wenn wir also dieses Bild speichern wollen müssen wir
- zählen wie viel Bildpunkte hatte das Bild das sind entsprechend wir zählen mal wie breit es ist es ist se Pixel breit vier Pixel hoch 6 x 4 wir
- bräuchten also 24 Bit um dieses Bild zu speichern genauer gesagt speichern wir aber mit den 24 Bit erstmal nur die Nutzdaten des
- Bildes was man auch ich noch merken muss sind sogenannte Metadaten die man auch braucht um das ursprüngliche Bild wieder rekonstruieren zu können und zwar
- müssten wir uns hier noch merken wie breit das Bild ist denn wenn wir einfach nur eine Folge von Nullen und Einsen haben wissen wir am Ende nicht wie wir
- die anordnen müssen wann machen wir den Umbruch zur nächsten Zeile das heißt wir müssten uns in diesem Fall noch merken dass das Bild eine Breite von SE Pixeln
- hat und jetzt könnte man fest legen man nimmt z.B immer so und so viel bit um sich die Breite zu merken das kann aber je nach Anwendung variieren manchmal
- nimmt man vielleicht immer 10 Bit um sich das zu merken manchmal vielleicht 12 weil das nicht eindeutig dann festgelegt ist schreiben wir einfach mal
- hin wir brauchen 24 Bit für die Nutzdaten plus den Speicherbedarf den die Metadaten noch ausmachen die Metadaten müssen wir uns
- aber bei jeder möglichen Speicherverfahren Werken deswegen reicht das auch auch wenn wir das entsprechend hier so
- angeben als nächstes wollen wir uns überlegen wie man Speicherplatz einsparen kann und zwar mit einer verlustfreien kompressionsmethode wir
- wollen also in der Lage sein das ursprüngliche Bild mit selber Qualität wiederherzustellen ein mögliches Verfahren hierzu ist die
- lauflängencodierung oder die sogenannte nbit lauflängencodierung diese beiden Verfahren schauen wir uns jetzt nacheinander an beginnen wir mit dem
- ersten die Idee der laufläencodierung besteht darin dass in einem Bild sehr häufig Pixel der gleichen Farbe mehrmals nacheinander
- Auftreten und die Idee ist einfach dass wir uns nicht jeden einzelnen Pixel merken sondern wir merken uns wie oft kommt ein Pixel vor wir legen fest wir
- fangen damit an dass wir angeben wie viele weiße Pixel hat das Bild und dann kommen immer abwechselnd wie viel schwarze dann wieder wie viel weiße wie
- viel schwarze und so weiter ich notiere erm die Ideen also wir starten mit den weißen Pixeln und wir merken uns die Anzahl der gleichen
- Pixel das machen wir jetzt für obiges Bild dann wird gleich sehr viel klarer wie ich das meine dieses Bild hier beginnt mit vier
- weißen Pixeln wir notieren uns also eine dann kommt ein schwarzer Pixel das Notieren wir auch danach kommen vier weiße wir machen einfach in der nächsten
- Zeile weiter es kommen drei schwarze und jetzt kommen noch mal eine ganze Reihe weiß wir Zen durch das sind 6 + 6 also 12 weiße
- insgesamt und so merken wir uns das jetzt einfach wir merken uns unser Bild beginnt vier weiße Pixel ein schwarzer vier weiße drei schwarzer 12 weiße und
- auf die Weise könnte man das Bild wieder hererstellen natürlich können wir diese Zahlen so nicht im Computer speichern sondern müssen sie erst binär codieren
- bei der allgemeinen lauflcodierung geht man dann so vor man sucht sich die größte Zahl raus das ist die 12 und überlegt sich wie viel bit brauche ich
- um eine 12 abzuspeichern da brauchen wir vier Bit für denn mit dre bit könnte ich maximal eine sieben
- speichern aber mit 4 ist die 12 kein Problem und das sieht dann wie folgt aus 100 8 + 4
- 12 und jetzt müssen wir alle anderen zeihen auch mit 4er bit codieren damit man später das Bild wieder rekonstruieren kann und weiß wo hört die
- eine pixelfarbe auf und wo geht die Nächste los deswegen können wir nicht einfach sagen wir machen mal mal 4 Bit mal 3 bit das würde keinen Sinn ergeben
- dann könnten wir das Bild nicht wiederherstellen also müssen wir alles mit vier bit angeben die drei mit vier B die vi ist ja 10 müssen wir auch eine
- Null auffüllen damit wir auch ein Vierer Block haben bei der 1 machen wir das genauso und noch mal bei der vier wir brauchten also für jede Länge 4
- Bit und wir haben insgesamt 1 2 3 4 5 Längen 5 x 4 sind wir bei 20 bit die rein Nutzdaten die wir hier speichern sind also 20 bit aber es
- kommen auch noch die Metadaten hinzu und zwar müssen wir uns hier auch natürlich die Breite des Bildes merken wir müssen uns aber auch merken wie viel
- bit haben wir genommen um so eine Lauflänge zu codieren also die Anzahl der gleichen Pixel und da haben wir ja jetzt jeweils
- vier bit verwendet wegen der 12 wie wir uns eben überlegt haben we das müssten wir uns auch speichern wir müssten un speichern wir haben 4er bit verwendet um
- die Länge anzugeben und wir müssten uns die Breite speichern die ist sech Pixel breit das breite speichern müssen wir aber immer machen wie wir eben schon
- festgestellt haben das haben wir auch bei der grundcodierung gemacht dass was hier hinzu kommmt das neue ist dass man sich noch merken muss wie viel Bild hat
- man für die Länge genommen und wenn man sich die Länge noch auch noch speichern muss dann merkt man schon wir haben ja sowieso nur 4er
- bit gespart wenn wir 20 und 24 vergleichen 4 Bit hätten wir zwar gespart aber wir müssen uns noch die Länge merken das heißt im
- Endeffekt kommt so plus- n0 raus wir haben eigentlich jetzt nicht besonders viel gespart und deswegen ist ein bisschen intelligenter die sogenannte
- nbit lauflängencodierung hier legt man im Vorhinein fest wie viele bit man zum Codieren der Lauflänge benutzt z.B sagt
- man man nimmt die sogenannte dreibit lauflängencodierung dann würde man immer drei bit nehmen um die Länge zu codieren was wir da drüben gemacht haben
- wäre so gesehen die vierbit Lauf dencodierung gewesen weil wir immer vierbit hatten nur weil es variabel war mussten wir uns das merken wenn wir das
- von vorne rein festlegen wie vi bit wir nehmen brauchen wir uns die Anzahl der bit nicht noch mal merken dann ist ja klar wir haben immer drei bit genommen
- und so machen wir das jetzt mal für das obige Bild der Anfang ist genauso wie zur normalen lauflcodierung jetzt zT einfach durch wie kommen die einzelnen
- Pixel vor wir haben vier weiße dann kommt ein schwarzer vier weiße drei schwarze 12 weiße also genau wie eben auch und jetzt codieren wir jede Länge
- mit 3 bit die vier wird also dargestellt als 10 die 1 codieren wir dann mit 01 dann kommt wieder eine
- 4 für die 3 haben wir 0 1 1 und bei der 12 haben wir ein Problem mit 3 bit können wir keine 12 darstellen denn wenn wir alle bit ausschöpfen das mache ich
- jetzt mal wir nehmen alle dre bit dann haben wir aber erst eine 7 dargestellt weil 4 + 2 + 1 das ist 7 wir müssen aber auf 12 kommen und da ist die Idee dass
- man sich jetzt einfach merkt wir haben sieben weiße und dann kommen erstmal keine schwarzen wir codieren also eine Null keine
- schwarzen und dann kommt ja wieder der Block für die weißen und dann müssen noch fünf weiße kommen wir haben also die 12 zerlegt in 7 + 5 und haben uns
- gemerkt dass dazwischen keine schwarzen Pixel kommen wie viel bit haben wir jetzt hier gebraucht wir zählen wieder durch wir
- haben 1 2 3 4 5 6 7 x 3 also 21 bit als Nutzdaten und die Metadaten sind wieder die Breite des Bildes und und die Anzahl der bit die wir für die Länge verwendet
- haben brauchen wir nicht speichern weil wir von vorne rein festgelegt haben wir nehmen die dreibit Lauflängen Codierung und das heißt wenn wir das
- jetzt mit dem ur mit der ursprünglichen nicht komprimierten Codierung vergleichen dann können wir sicher sagen wir haben 3 bit gespart es war also
- schon eine Ersparnis sichtbar dann hoffe ich habt ihr das Prinzip verstanden schaut euch noch mal
- ganz in Ruhe an wenn ihr Fragen habt stellt die gerne wie immer freue ich mich über einen Daumen nach oben und natürlich ein Abo
- dann bis zum nächsten Video
Zum Nachlesen
LauflängenkodierungDie Lauflängenkodierung (englisch run-length encoding, kurz RLE), auch die Lauflängencodierung, ist ein einfacher verlustfreier Kompressionsalgorithmus.
BildkompressionBildkompression ist die Reduzierung des Speicherbedarfs eines digitalen Bilds. Wie bei jeder Anwendung der Datenkompression geht es darum, …
DatenkompressionDatenkomprimierung [1] genannt – ist ein Vorgang, bei dem die Menge digitaler Daten reduziert wird. Dadurch sinkt der Speicherbedarf,
Windows BitmapWindows-Bitmaps werden entweder unkomprimiert oder verlustfrei mit RLE-Komprimierung (Lauflängenkodierung) gespeichert. Dies ist ein eher schwaches …