Archive for August, 2011
During the three months programming，we have made great achievement on CCV. The former CCV can not support multi-cam, then I made a proposal and code for that purpose.
I wrote 3 projects as follows:
Project PS3Capture is the first project which is mainly used to test the function of PS3 Eye camera. I have got a better understanding of PS3 Eye programming and the related method of API through this program. Meanwhile, the logic of camera select function has been test as well.
Project videoInput_GUID is based on the source code of videoInput and has been recompiled, using the DevicePath to identify cameras. I added the DevicePath getting function of the certain camera. You can get the DevicePath parameter by camera ID, and vice versa.
Project CCV_Select_Camera is my major contribution to CCV. In this project, I designed a new UI for camera selection and some new controls (for example: ofxGuiGrid for cameras grid display or selection, ofxGuiImage for camera frame display, ofxGuiLabel for text display, ofxGuiArrow for camera list selection just like a arrow button). I also wrote the background class named CamsUtils for camera control. You can use it for loading or saving XML settings and getting the camera’s parameters and settings.
Mutli-cams selection interface preview
What I have done
- Read through the CCV 1.4 source code, learned the CCV’s background theories;
- Learned how to get the frames of PS3 Eye multi-cams;
- Designed the new multi-cams selection GUI;
- Built up the multi-cams selection background logic;
- Built up the ofxDShow class which can capture the DirectShow based cameras’ frame.
Contribution to CCV 1.5
- New interface for multi-cams selection;
- Some ofxGui control classes for cameras display and/or control;
- ofxDShow class for DirectShow based camera data capturing;
- Modified videoInput library for other people reuse.
Advices for the students in the future
I think the students should communicate with their group more frequently. Also the students should make a good proposal with the more accurate timeline.
- Thanks for my patient and dear mentor: Anatoly Churikov. For his great help about my work and my code.
- Thanks for the NUI Group administrator: Christian Moore. For his great help about the GUI designs and other things.
- Thanks for Junbo Zhang. For his great help about my code and other things.
- Thanks for my family and friends, for their attentive care when I was sick.