バックグラウンド減算を行うためにC ++で作成されたアルゴリズムがあり、dll(extern)を使用して引数「IplImage」でc#から呼び出したいと思います。C#でカメラストリームを取得し、フレームを画像(ビットマップ)として持っているという問題。
ビットマップを IplImage に変換して C++ で送信し、その逆で処理されたフレームを取得するにはどうすればよいですか?
どうもありがとう。
Emgucvを使用して、試すことができます
Bitmap bitmap = ....
Emgu.CV.Image<Bgr, Byte> img = new Image<Bgr, byte>(bitmap);
Emgu.CV.Structure.MIplImage = img.MIplImage;
IntPtr
C++ メソッドで送信するには、オブジェクトとして渡すことができます
IntPtr r = IntPtr.Zero;
System.Runtime.InteropServices.Marshal.StructureToPtr(img, r, false);
// call your c++ method
...
についての詳細も参照してくださいMarshal