Startseite Themenabende Mailingliste Pläne Links GnuPG-Schlüssel |
Hierbei bitte ich um Entschuldigung für die übermäßige Länge des Programmes, dies hat folgende Gründe:
Zum Trost verletzt dieses Programm gleich noch 2 weitere Patente (EP0129439 und EP0266049), und ich habe noch inhaltliche Fehler (siehe unten) gefunden, die dazu führen, daß eine "berichtigte" Realisierung des Patentes nicht dessen "Schutz" verdient.
Zum Code: Das Python-Programm, das die Python Imaging Library (PIL, für das Lesen und Schreiben der Bilddateien) benutzt, wird mit 2 Kommandozeilenparametern gestartet, welche die Quelldatei und den Basisnamen der Zieldateien (z.B. "ziel" für "ziel.jpg") bestimmen.
Das jew. Grauwertbild wird eingelesen (Zeile 5), dessen Histogramm (ab Zeile 6) und Median (ab Z.12) bestimmt, besagte Extrema (ab Z.19) berechnet (wobei ich als Beispiel als signifikanten Anteil des Gesamtbildes 0.05 = 5% annehme; Verfahren aus Anspruch 2), die Hintergrund- und Vordergrundfarbe bestimmt (ab Zeile 36, mit Verfahren aus Anspruch 5) und der Trennwert (Z.42) und die Schwellwerte (Z.44) berechnet.
Alles ab Zeile 48 wäre eigentlich nicht nötig, da nicht die Bildkonvertierung, sondern nur die Schwellwertberechnung wichtig ist. Alles weitere dient also nur der Demonstration bzw. dem Debugging. :)
Übrigens werden in diesem Programm gleich noch mindestens 2 weitere Patente verletzt, nämlich EP0129439 (LZW-Kompression) und EP0266049 (JPEG-Kodierung), da das Ergebnisbild sowohl als JPG als auch im GIF-Format abgespeichert wird.
HINWEIS: In den Ansprüchen 1 und 6 wurden die Bezeichnungen "background (color) extreme" und "foreground color extreme" (die aus dem realen Anfang bzw. Ende des Histogrammes hervorgehen) verwechselt, wo es um die Berechnung des Trennwertes zwischen Vordergrund und Hintergrund geht. Dies zeigen folgende Fakten:
Das vorliegende Programm verletzt also fast sämtliche Ansprüche, da es die angegebenen Verfahren realisiert und in Symbiose mit einem Allzweck-PC als beschriebener "Apparat" fungiert. Ersetzt man in den Zeilen 44 bis 46 die Verhältniswerte (1/8, 1/4, 1/2) mit 3/16, 3/8, 3/4, so werden natürlich auch die Ansprüche 4 und 9 ordnungsgemäß verletzt. (Der abgewandelte Quellcode ist in EP0187911.script2.html wieder zu finden.)
Startseite Themenabende Mailingliste Pläne Links GnuPG-Schlüssel |