Ich benutze OpenCV, um einen Live-Stream von einer Webcam aufzunehmen und Gesichter zu erkennen. Ich vergrößere sie so, dass nur mein Gesicht angezeigt wird.Webcam-Feed im cv :: Matten-Format in einer Picturebox anzeigen
Aber das Problem ist, dass ich das alles in C++ Windows-tue Forms und ich möchte es in einem PictureBox
angezeigt werden, anstatt die Anzeige immer in OpenCV imshow()
Fenstern.
Ich benutze cv::Mat
, so habe ich eine Menge Probleme mit der Anzeige in der Bilderbox.
Ich habe versucht, es in IplImage
zu konvertieren, aber das hat auch nicht funktioniert. Auch habe ich Google ausprobiert, aber ich konnte keine funktionierende Lösung bekommen. Ich habe das seit 3 Tagen probiert.
Hier ist mein Code für die Anzeige:
face = getFace(frame);
cv::imshow("window",face);
wo frame
und face
sind cv::Mat
Um in eine Picturebox anzuzeigen, müssen Sie IplImage in eine Bitmap konvertieren. – SinisterMJ
können Sie bitte die Codezeile dafür bereitstellen? –
Ich habe nur C# -Code zum Erstellen einer Bitmap. Es nimmt den Datenzeiger (IplImage-> dataOrigin) und die Größe, um es zu konstruieren. Da eine PictureBox wirklich eine C# -Sache ist, habe ich sie nicht in C++ verwendet. Für C++ würde ich eher OpenGL oder DirectX empfehlen, da es einfach so viel schneller ist. – SinisterMJ