retak
22.01.2011, 12:05
Hai ho,
da ich mich gerade mit der Fouriertransformation beschäftige, möchte ich nunmal probieren Bilder damit zu komprimieren. Die Idee ist ganz einfach: die Bilddaten in den Frequenzraum umrechnen, und alle Frequenzen weglassen, deren Amplitute kleiner 30% der größten Amplitude ist.
Damit das auch nutzbar ist, eine kleine GUI in Qt.
Was ich gern heute noch hinbekommen würde.
- Qt Programm schreiben was alle gänigen Bildformate anzeigen kann (easy)
- Für größere Bilder sollten Scrollbalken erscheinen (hab ich noch nie hinbekommen)
- das Format catCompress genauer Beschreiben. Breite/Höhe Angaben etc. sollen nicht mit in die FT einbezogen werden. Das Format recht locker gestalten damit z.b. auch mal Audiodaten mit gespeichert werden
- nicht erklären wie ich auf den Namen catCompress komme ;)
- einen Regler mit dem man einstellen kann, wie stark die Frequenz sein muss, damit sie nicht ignoriert wird
- den Kram in eine Datei speichern
- und natürlich sollte das Programm das Zeug auch wieder laden können.
- eine kurze Info um wieviel die Datei kleiner wurde
- einen Fortschrittsbalken
Puh doch ganz schön viel. Na ich setz lieber 2 Tage für an.
Dinge die wahrscheinlich niemals implementiert werden:
- Eine Vorschauanzeige für das komprimierte Bild
- Die FT für alle Dateien ermöglichen. RAW rein, RAW raus sozusagen
- Audiodaten aber speziell behandeln, z.B. kann man hier auch hohe und schwache Frequenzen weg lassen
- andere Komprimierungsalgos ermöglichen. Ich hab da noch einen für Plaintext only der jeden Text um 12% verkleinert :)
Naja ganz schön viele Ideen. Ich mach erstmal das allernötigste um zu sehen um wieviel so ein Bild kleiner wird. Und ob man dann etwas noch erkennen kann.
Wem noch irgendwas lustiges einfällt, nur heraus damit. Sourcecode wirds auch geben, auch wenn ich noch nicht weiss wohin damit. Aber vllt. hat der ein oder andere ja Spass damit.
Gruss
da ich mich gerade mit der Fouriertransformation beschäftige, möchte ich nunmal probieren Bilder damit zu komprimieren. Die Idee ist ganz einfach: die Bilddaten in den Frequenzraum umrechnen, und alle Frequenzen weglassen, deren Amplitute kleiner 30% der größten Amplitude ist.
Damit das auch nutzbar ist, eine kleine GUI in Qt.
Was ich gern heute noch hinbekommen würde.
- Qt Programm schreiben was alle gänigen Bildformate anzeigen kann (easy)
- Für größere Bilder sollten Scrollbalken erscheinen (hab ich noch nie hinbekommen)
- das Format catCompress genauer Beschreiben. Breite/Höhe Angaben etc. sollen nicht mit in die FT einbezogen werden. Das Format recht locker gestalten damit z.b. auch mal Audiodaten mit gespeichert werden
- nicht erklären wie ich auf den Namen catCompress komme ;)
- einen Regler mit dem man einstellen kann, wie stark die Frequenz sein muss, damit sie nicht ignoriert wird
- den Kram in eine Datei speichern
- und natürlich sollte das Programm das Zeug auch wieder laden können.
- eine kurze Info um wieviel die Datei kleiner wurde
- einen Fortschrittsbalken
Puh doch ganz schön viel. Na ich setz lieber 2 Tage für an.
Dinge die wahrscheinlich niemals implementiert werden:
- Eine Vorschauanzeige für das komprimierte Bild
- Die FT für alle Dateien ermöglichen. RAW rein, RAW raus sozusagen
- Audiodaten aber speziell behandeln, z.B. kann man hier auch hohe und schwache Frequenzen weg lassen
- andere Komprimierungsalgos ermöglichen. Ich hab da noch einen für Plaintext only der jeden Text um 12% verkleinert :)
Naja ganz schön viele Ideen. Ich mach erstmal das allernötigste um zu sehen um wieviel so ein Bild kleiner wird. Und ob man dann etwas noch erkennen kann.
Wem noch irgendwas lustiges einfällt, nur heraus damit. Sourcecode wirds auch geben, auch wenn ich noch nicht weiss wohin damit. Aber vllt. hat der ein oder andere ja Spass damit.
Gruss