0

私は WP7 で MediaLibrary を使用しており、BitmapImage (WriteableBitmap) でステガノグラフィーを実行していますが、これは正常に動作します (このアプローチを使用: http://www.codeproject.com/Articles/4877/Steganography-Hiding-messages-in-the-Noise -of-a-Pi )

MediaLibrary.SavePicture メソッドを呼び出してビットマップを電話に保存すると、問題が発生します。この保存されたビットマップを携帯電話から再度読み込むと、ビットマップのピクセルがシフトされ、ステガノグラフィ データが失われていることがわかります。save メソッド中にこの動作を回避する方法はありますか?

さらに良いことに、ビットマップで永続化されるメタデータをビットマップに添付する方法はありますか?

どうもありがとう!レオ

4

1 に答える 1

0

MediaLibrary.SavePictureこの問題は、バイトストリームが圧縮されていないビットマップを表しているのに、 がストリームを JPEG として保存していることが原因である可能性があります。JPEG は非可逆圧縮形式であるため、データが破棄され、隠しバイト ストリームが破損する可能性があります。私はステガノグラフィーには詳しくありませんが、可能であれば、空の JPEG 画像を作成し、それにデータを書き込んでみてください。このようにして、画像形式は変わりません。の値でExtensions.SaveJpegを使用し、それにデータを書き込んでから、MediaLibrary に保存することができます。quality100

于 2012-04-09T20:48:41.387 に答える