Używam płyty Nitrogen6x z kamerą ov5640 (mipi).Używanie kamery niestandardowej w OpenCV (przez GStreamer)
Aparat nie używa standardu v4l/v4l, ale możemy strumienia wideo za pomocą GStreamer dla jego kierowcy (mfw_v4l):
gst-launch mfw_v4lsrc ! autovideosink
chcę używać aparatu w OpenCV nazywając go poprzez GStreamer (GStreamera wewnątrz OpenCV). Zadałem pytanie dotyczące połączenia się z GStreamerem wewnątrz OpenCV here, i to jest kontynuacja.
Jeśli włączę obsługę GStreamer, to jest zaznaczone in the source code, ale OpenCV próbuje użyć standardowego V4L/V4L2 dla GStreamer, który chcę zmienić. Odcinek o wywołanie GStreamer jest w cap_gstreamer.cpp:
CvCapture* cvCreateCapture_GStreamer(int type, const char* filename)
{
CvCapture_GStreamer* capture = new CvCapture_GStreamer;
if(capture->open(type, filename))
return capture;
delete capture;
return 0;
}
Chyba to jest sekcja powinna pracować na jakoś wskazać sterownik aparatu. ("Typ" to prawdopodobnie numer odnoszący się do sterownika (jak zdefiniowano w prekomp.hpp), ale czym jest "nazwa pliku"?)
Wszelkie sugestie dotyczące dostępu do kamery za pośrednictwem GStreamera byłyby pomocne i docenione. Dzięki!
W której wersji OpenCV to działa? –
nie działa przed opencv v3 –