ここで注意点は、2番めと3番目の処理の違いです。いずれもIplImageからWritableBitmapへの変換をしているわけですが、2番めはごっそり入れ替わる事になります。具体的に言えば、WPFのImageクラスのSourceにWritableBitmapを割り当てていた場合、2番めの処理をするとSourceに割り当てていた領域とは違うメモリ領域(アドレス)が割り当てられてしまい、以後、Imageの描画が反映されなくなります。後者の場合は、Sourceに割り当てたWritableBitmapの中身だけを書き換えるので、以後もImageの描画が反映されます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// WritableBitmap からIplImageへの変換 | |
IplImage image = wBitmap.ToIplImage(); | |
//IplImageからWritableBitmapへの変換 | |
wBitmap= image.ToWriteableBitmap(); | |
//IplImageからWritableBitmapへの変換(WritePixelsと同じ) | |
WriteableBitmapConverter.ToWriteableBitmap(image,wBitmap); | |
// Mat と WriteableBitmapの相互変換 | |
Mat mm =wBitmap.ToMat(); | |
wBitmap= mm.ToWriteableBitmap(); |
0 件のコメント:
コメントを投稿