OpenCvとC++を使用してJPEG画像をDCT 8x8に変換するにはどうしたらいいですか?JPEGをDCTに変換する方法8 x 8?
答えて
あなたが達成しようとしているところには意味がないと思います。 JPEG画像は既にDCTでいっぱいです。あなたは何をしようとする最初に理解する必要があり、OpenCVの+ C++のみメシエ
私はJPEG画像に透かしを入れようとしています。私がそれをするには、画像を8x8のより小さいブロックに変換しなければならない。そして、「PEG画像は既にDCTでいっぱいです」という意味はどうですか? – stbb24
私はあなたがいくつかの読書をすることをお勧めします--JPEGウィキペディアのエントリーはおそらく良い出発点でしょう。 – ZungBang
@ stbb24:JPEGは画像データを圧縮するために内部的にピクセルのブロックでDCTを使用します。ウォーターマークを追加するには、95%はそのようなことに対処したくないと確信しています。 libjpeg(またはその他の代替ライブラリ)を使用し、JPEGを通常のRGB(または快適な場合はYUV)に圧縮解除し、画像にウォーターマークを適用して圧縮します。 DCTの特定のブロックだけを取り出し、修正してウォーターマークを適用して保存することが確実な場合は、libjpegの詳細を理解する必要があります。メーリングリストに尋ねるそのようなことが可能なら、私はあなたが迅速な解決策を得るだろうと確信しています。 – Pavel
libjpegはあなたの友達です作る...
次のコードスニペットは、JPEG画像からDCT係数をロードします(免責事項:それは引かれています私の4歳のプロジェクトオフ - メーリングリストへ):
struct jpeg_decompress_struct srcinfo;
struct jpeg_error_mgr jsrcerr;
jvirt_barray_ptr * src_coef_arrays;
FILE * fp;
srcinfo.err = jpeg_std_error(&jsrcerr);
jpeg_create_decompress(&srcinfo);
fp = fopen(filename, "rb");
jpeg_stdio_src(&srcinfo, fp);
(void) jpeg_read_header(&srcinfo, TRUE);
src_coef_arrays = jpeg_read_coefficients(&srcinfo);
fclose(fp);
...
// use coefficients
...
(void) jpeg_finish_decompress(&srcinfo);
jpeg_destroy_decompress(&srcinfo);
係数へのアクセスビット毛深いです - 私はあなたがのlibjpegに同梱されますjpegtranユーティリティのソースコードを参照してください、それはそこに行うのかを確認することをお勧めします。
より完全な例がここにあります:http://stackoverflow.com/a/4497493/27831 – ZungBang
- 1. 変更されたJPEGデコーダのための8ポイント1d DCTの高速実装
- 2. UTF-8変換?
- 3. RGB565をグレースケール(8ビット)に変換する
- 4. gdで8ビットjpegを作成する方法
- 5. UTF-8文字をISO Latin 1に変換する方法は?
- 6. マップをJavaのリストに変換する方法8
- 7. 2進数を8進数に変換する方法は?
- 8. ユーザ入力をUTF-8に変換する最良の方法
- 9. 日付を8桁の整数に変換する方法は?
- 10. PHP DomCrawlerの文字列をUTF-8に変換する方法
- 11. ファイルディレクトリをJavaでInputStreamのリストに変換する方法8
- 12. UnicodeコードポイントをUTF-8に変換する
- 13. UTF-8をUkranianエンコーディングに変換する
- 14. 高速DCT変換
- 15. URLENCODEDデータをPHPでUTF-8に変換
- 16. AndroidでのUTF-8変換?
- 17. メール本文をUTF-8に変換
- 18. Javapackager 8、el Capitanを使用してJarファイルをDMGに変換する方法
- 19. Window-1251(ロシア語キリル文字)MySqlデータベースをUTF-8に変換する方法
- 20. のC#でvarをchar配列に変換する方法char array [8]
- 21. C言語でUTF-8文字をバイナリに変換する方法
- 22. アラビア語のテキストをPyQt4からUTF-8に変換する方法
- 23. UTF-8からUnicodeへの変換
- 24. 変換文字列\\ u6d4e \\ u5357 \\ u5e02からutf-8データへの変換方法
- 25. dct 8 * 8行列の逆行列を実装しようとしています
- 26. Unicode(UTF-8)コードポイントをバイトに変換する
- 27. 8ビット符号なしPCMを8ビット符号付きPCMに変換
- 28. PrimeFaces 3.xのUTF-8
- 29. javax.mail.BodyPartのコンテンツをUTF-8クリーンテキストに変換するには?
- 30. iphoneでUIImagesを8ビットカラーの画像に変換するには?
あなたはこれまで何をしていますか? – chikuba
OpenCVのドキュメントを読むことから始めて – Pablo