我正在使用OpenCV从网络摄像头获取实时流并检测到人脸后。我正在调整它们,以便只显示我的脸部。在picturebox中以cv :: Mat格式显示摄像头源
但问题是,我做的这一切在C++ Windows窗体,我希望它显示在PictureBox
而不是让OpenCV中imshow()
窗口显示。我正在使用cv::Mat
,所以我在图片框中显示很多问题。
我已经尝试将它转换为IplImage
,但那也不起作用。 另外,我试过谷歌,但我无法得到一个工作解决方案。我一直在尝试这个3天。
这里是我的显示代码:
face = getFace(frame);
cv::imshow("window",face);
其中frame
和face
是cv::Mat
要显示到图片框中,您需要将该IplImage转换为位图。 – SinisterMJ
你能为此提供代码行吗? –
我只有用于构建位图的C#代码。它需要数据指针(IplImage-> dataOrigin)和大小来构造它。由于PictureBox实际上是C#的东西,我没有在C++中使用它。对于C++,我宁愿推荐使用OpenGL或DirectX显示,因为它的速度非常快。 – SinisterMJ