Hallo,
Es ist ein etwas spezielles Themengebiet um das es geht. Und zwar gehts um JPEG Kompression und um Steganografie.
Kurz eine Erläuterung zu JPEG:
1. RGB wird zu YCbCr gewandelt
2. Dann findet evtl. ein Subsampling statt (4:4:4, 4:2:2, 4:2:0, usw ....)
3. Werden 8x8 Blöcke definiert, die alle eine Diskrete Kosinus Transformation (DCT) durchlaufen
4. Werden die 8x8 DCT-Koeffizienten-Matrizen zickzack sortiert
5. Werden die zickzack sortierten DCT-Koeffizienten-Matrizen Huffman kodiert.
Mein Anliegen ist ein eigenen JPEG Kodierer bzw. Dekodierer zu schreiben und auch gleichzeitig Kontrolle über die DCT-Koeffizienten zu haben, da viele Stego-Tools die DCT Koeffizienten so geringfügig mit geheim Bits ändern, das es im Ergebnis gar nicht auffällt.
Den Dekodierer habe ich bereits nach sehr viel Debugging fertig geschrieben.
(Hatte dafür zuerst ein Tutorial, deshalb diese Reihenfolge, und zwar dieses:
http://www.impulseadventure.com/photo/jpeg-huffman-coding.html
dieses Buch ist auch sehr gut:
"Compressed Image File Formats JPEG, PNG, GIF, XBM, BMP" von John Miano
)
Jetzt ist prinzipiell das ganze rückwärts, auch dafür habe ich eine Anleitung, eigentlich weiß ich auch wie ich es machen kann.
Es gibt unter der Java Advanced Imaging API JPEG Kodierer aber die geben mir anscheinend keine Möglichkeit die DCT zu ändern.
Um es kurz zu machen, ich suche jetzt was fertiges, es wäre nicht schlecht wenn jemand hier wüßte, ob es ein Java Bibliothek oder Klasse gibt, mit der man die DCT Koeffizienten einer JPEG extrahiert ändert und wieder reinschreiben kann.
Vielleicht interressiert sich ja noch jemand für dieses Thema der Steganografie.
Viele Grüße
Es ist ein etwas spezielles Themengebiet um das es geht. Und zwar gehts um JPEG Kompression und um Steganografie.
Kurz eine Erläuterung zu JPEG:
1. RGB wird zu YCbCr gewandelt
2. Dann findet evtl. ein Subsampling statt (4:4:4, 4:2:2, 4:2:0, usw ....)
3. Werden 8x8 Blöcke definiert, die alle eine Diskrete Kosinus Transformation (DCT) durchlaufen
4. Werden die 8x8 DCT-Koeffizienten-Matrizen zickzack sortiert
5. Werden die zickzack sortierten DCT-Koeffizienten-Matrizen Huffman kodiert.
Mein Anliegen ist ein eigenen JPEG Kodierer bzw. Dekodierer zu schreiben und auch gleichzeitig Kontrolle über die DCT-Koeffizienten zu haben, da viele Stego-Tools die DCT Koeffizienten so geringfügig mit geheim Bits ändern, das es im Ergebnis gar nicht auffällt.
Den Dekodierer habe ich bereits nach sehr viel Debugging fertig geschrieben.
(Hatte dafür zuerst ein Tutorial, deshalb diese Reihenfolge, und zwar dieses:
http://www.impulseadventure.com/photo/jpeg-huffman-coding.html
dieses Buch ist auch sehr gut:
"Compressed Image File Formats JPEG, PNG, GIF, XBM, BMP" von John Miano
)
Jetzt ist prinzipiell das ganze rückwärts, auch dafür habe ich eine Anleitung, eigentlich weiß ich auch wie ich es machen kann.
Es gibt unter der Java Advanced Imaging API JPEG Kodierer aber die geben mir anscheinend keine Möglichkeit die DCT zu ändern.
Um es kurz zu machen, ich suche jetzt was fertiges, es wäre nicht schlecht wenn jemand hier wüßte, ob es ein Java Bibliothek oder Klasse gibt, mit der man die DCT Koeffizienten einer JPEG extrahiert ändert und wieder reinschreiben kann.
Vielleicht interressiert sich ja noch jemand für dieses Thema der Steganografie.
Viele Grüße