学习研究过程中总是要走不少弯路,在c#中我们用的picturebox或者其他控件的图片都是以image行式加载进来的,如果我们想把这个图片传给一个 OpencvSharp.mat ,是不能直接赋予的,会提示system.drawing.bitmap无法隐式转换为OpencvSharp.mat类型;其实OpenCvSharp.Extensions中有个直接转换的类和函数可供使用就是BitmapConverter,给有需要的人。
-
public void ToMat() { Bitmap bitmap = new Bitmap("123.PNG"); // width % 4 != 0 Mat converted = BitmapConverter.ToMat(bitmap); //Mat converted = Mat.FromBitmap(bitmap); using (new Window("Bitmap to Mat test", converted)) { Cv2.WaitKey(); }
在C#学习研究中,picturebox等控件的图片以image形式加载,无法直接将其传给OpencvSharp.Mat,会提示类型转换错误。不过,OpenCvSharp.Extensions中的BitmapConverter类和函数可实现直接转换,为有需要者提供便利。
3643





