An Example For Gstreamer + OpenCV
Hi all,
Thanks to Klen, Daniil and gnuton, I got the tutorial to combine Gstreamer and OpenCV (and OpenGL as well). I finished one program in which I used Gstreamer to get the camera working, transferred the data from CameraN900 : buffer to an IplImage and did some image processing to track the hand.
I would like to upload my app cause I still met with several problems:
1, Based on Klen's program, I added the OpenCV functions mainly in glwidget.cpp. I don't know whether this is a proper way to get the camera buffer data from pipeline to IplImage. Actually, I used the function qImage2IplImage(const QImage& qImage);
2, I managed to do the image processing frame by frame, but I failed to apply the result, (for example, I drawed some lines on the contour of hand) to the original QImage and playback the capture frame with drawings. As I know, Klen used OpenGL to draw fps information immediatly to the pipeline data. And I would like to draw on it with opencv drawing functions. As a result, I created cvNamedWindow and show the processing result in another window, which obviously reduced the robustness of the whole app;
3, While the app worked on my N900, it was so slow.The fts was reduced to 2~3 fps when applying the image processing. I think there are many reasons for this, while I know something is killing the phone memory and at the meantime, the OpenCv functions are too expensive for N900.
Plz take a look at this app and try it on your N900 if you like. Any suggestions to improve that will be welcome.
Thx. Here is the link for download.
[url]http://www.mediafire.com/?ntnzyz3g3yj[/url]
Teng
Re: An Example For Gstreamer + OpenCV
Dear Teng:
May I know if you handle auto-focus issue in this program?
The program works on my N900 without auto-focus.
Thanks!
Re: An Example For Gstreamer + OpenCV
[QUOTE=stone.chao;750936]Dear Teng:
May I know if you handle auto-focus issue in this program?
The program works on my N900 without auto-focus.
Thanks![/QUOTE]
I haven't applied any strategy about auto-focus or calibration. BTW, what do you think auto-focus could be used for here?
Re: An Example For Gstreamer + OpenCV
Thanks! Just want to make sure about this.
I think it's maybe more easier to do image processing if getting clear frame via applying auto-focus.
Just a thought. :)