Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将位图转换为OpenCvSharp IplImage_C#_Opencv_Image Processing_Emgucv_Opencvsharp - Fatal编程技术网

C# 将位图转换为OpenCvSharp IplImage

C# 将位图转换为OpenCvSharp IplImage,c#,opencv,image-processing,emgucv,opencvsharp,C#,Opencv,Image Processing,Emgucv,Opencvsharp,不幸的是,我正在努力解决这个问题。我有一个与Emgu和OpenCvSharp混合的项目。听起来很奇怪,但也有原因 无论如何,我有一个EMGU.CV.Image,我想用它来填充OpenCvSharp IplImage 我假设这是可能的,但我不能把我的头围绕它 相关代码片段(C#): FrameCapture=Cv.CreateFileCapture(@“C:\test\vid1.mp4”); var frm=cap.QueryFrame(); var frameBmp=frm.Bitmap; Ip

不幸的是,我正在努力解决这个问题。我有一个与Emgu和OpenCvSharp混合的项目。听起来很奇怪,但也有原因

无论如何,我有一个EMGU.CV.Image,我想用它来填充OpenCvSharp IplImage

我假设这是可能的,但我不能把我的头围绕它

相关代码片段(C#):

FrameCapture=Cv.CreateFileCapture(@“C:\test\vid1.mp4”);
var frm=cap.QueryFrame();
var frameBmp=frm.Bitmap;

IplImage curFrame= 和往常一样,答案总是简单的

对于遇到此问题的任何人,您可以执行以下操作:

            var frm = cap.QueryFrame(); // this is an Emgu.CV.Image object
            var frameBmp = frm.Bitmap; // this is the bitmap from that object

            Frame = new IplImage(frameBmp.Width, frameBmp.Height, BitDepth.U8, 3);  //creates the OpenCvSharp IplImage;
            Frame.CopyFrom(frameBmp); // copies the bitmap data to the IplImage

你试过什么?这两个类的内存布局是什么?你能获取原始像素数据吗?谢谢ananthonline…我想这才是真正的问题所在。我不知道该试什么。原始像素数据可能是解决问题的方法。我正在查看OpenCvSharp.IplImage对象上可用的属性,我不确定如何复制该数据
            var frm = cap.QueryFrame(); // this is an Emgu.CV.Image object
            var frameBmp = frm.Bitmap; // this is the bitmap from that object

            Frame = new IplImage(frameBmp.Width, frameBmp.Height, BitDepth.U8, 3);  //creates the OpenCvSharp IplImage;
            Frame.CopyFrom(frameBmp); // copies the bitmap data to the IplImage