grundlagen_der_bildverarbeitung
                Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| grundlagen_der_bildverarbeitung [2024/01/20 08:37] – [Das RGB System und Java] torsten.roehl | grundlagen_der_bildverarbeitung [2024/01/21 17:06] (aktuell) – [Pixelzahl eines Bildes] torsten.roehl | ||
|---|---|---|---|
| Zeile 16: | Zeile 16: | ||
| - | Jeder Bildpunkt besitzt einen Farbwert. Die Menge aller Farbwerte wird mit W bezeichnet.\ | + | Jeder Bildpunkt besitzt einen Farbwert. Die Menge aller Farbwerte wird mit W bezeichnet. | 
| Ein digitalisiertes Bild (b) ist eine Abbildung, bei der jeder Bildpunkt aus der Menge M des Bildbereiches einen Farbwert zugewiesen bekommt. | Ein digitalisiertes Bild (b) ist eine Abbildung, bei der jeder Bildpunkt aus der Menge M des Bildbereiches einen Farbwert zugewiesen bekommt. | ||
| <note important> | <note important> | ||
| - | Definiton: Digitalisiertes Bild: b: M → W\\ | + | **Definiton**: Digitalisiertes Bild: b: M → W\\ | 
| M ist der Bildbereich\\ | M ist der Bildbereich\\ | ||
| W ist die Menge aller Farbwerte</ | W ist die Menge aller Farbwerte</ | ||
| Zeile 55: | Zeile 55: | ||
| * '' | * '' | ||
| - | ==== Überschrift | + | ==== Color-Objekt | 
| - | Ein Color-Objekt ist 32 bit groß. Das letzte Byte, der α-Wert, ist die Transparenz (Deckkraft). | + | Ein **Color-Objekt** ist 32 Bit groß. Das letzte Byte, der α-Wert, ist die Transparenz (Deckkraft). | 
| + | |@red:< | ||
| + | |Aufbau **java.awt.Color-Objekt** |||| | ||
| + | ==== FSG-Bibliothek: | ||
| + | |||
| + | |||
| + | |||
| + | Das folgende Programm lädt ein Bild und zeigt es innerhalb eines Fensters an. | ||
| + | |||
| + | |||
| + | |||
| + | <Code Java linenums: | ||
| + | import de.informatics4kids.Picture; | ||
| + | import de.informatics4kids.PictureViewer; | ||
| + | |||
| + | public class Viewer { | ||
| + | |||
| + | public static void main(String[] args) { | ||
| + | |||
| + | // Bild erstellen und öffnen | ||
| + | Picture pic = new Picture("/ | ||
| + | //Viewer verfügbar machen | ||
| + | PictureViewer viewer = new PictureViewer(pic.getPicture()); | ||
| + | //Bild anzeigen | ||
| + | viewer.show(); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |{{ : | ||
| + | |Das Bild aus dem obigen Programmbeispiel angezeigt mit der PictureViewer Klasse.| | ||
| ===== Rot-, Grün-, und Blaubilder ===== | ===== Rot-, Grün-, und Blaubilder ===== | ||
| + | |||
| + | Aus dem obigen Bild lässt sich ein Rotbild erzeugen, indem von jedem Pixel der Farbwert ermittelt und der Rotanteil bestimmt wird. Anschließend wird der Farbwert des Pixels durch ein Color-Objekt ersetzt, das nur den ermittelten Rotanteil enthält. | ||
| + | Das folgende Programm demonstriert dies Anhand des Pixels an der Position x = 4 und y = 5. | ||
| + | Der erste Pixel hat die Position (0,0) und befindet sich oben links im Bild. | ||
| + | |||
| + | <Code Java linenums: | ||
| + | import java.awt.Color; | ||
| + | |||
| + | import de.informatics4kids.Picture; | ||
| + | |||
| + | public class Main { | ||
| + | |||
| + | public static void main(String[] args) { | ||
| + | // testbild.jpg öffnen | ||
| + | Picture pic = new Picture(); | ||
| + | pic.open("/ | ||
| + | // leere Kopie erzeugen | ||
| + | Picture rotBild = new Picture(pic.widthX(), | ||
| + | // Farbe auslesen und neu erzeugen | ||
| + | Color farbe = pic.getColor(3, | ||
| + | // nur rote Komponente einfügen! | ||
| + | Color rot = new Color(farbe.getRed(), | ||
| + | // Farbe setzen | ||
| + | rotBild.setColor(3, | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Durchläuft man alle Pixel des Bildes und speichert immer nur eine Farbkomponente ab, erhält man Rot- ,Grün- oder Blaubilder. Auf diese Weise wurden die " | ||
| + | |||
| + | |{{ : | ||
| + | |<color # | ||
| ===== Histogramme ===== | ===== Histogramme ===== | ||
| + | |||
| + | Das Bild des roten Hundes besteht lediglich aus roten Farbwerten. | ||
| + | |||
| + | |||
| + | |{{ : | ||
| + | |Histogramm des roten und grünen Hundes (siehe vorherigen Abschnitt). | ||
| + | |||
| + | Ein Histogramm **h** eines Bildes **b** ist eine Abbildung von der Menge **W** des Farbbereichs auf das Intervall [0, | ||
| + | <note important> | ||
| + | **Definition**: | ||
| + | $$h:W \rightarrow [0,1]$$ | ||
| + | * W: Farbbereich | ||
| + | * [0,1] Zahlenintervall von 0 bis 1. | ||
| + | mit | ||
| + | $$h(g)=\frac{\text{Menge aller Pixel mit dem Farbwert g}}{\text{Gesamtpixelzahl des Bildes}}$$ | ||
| + | </ | ||
grundlagen_der_bildverarbeitung.1705739848.txt.gz · Zuletzt geändert:  von torsten.roehl
                
                