A simple test - 2 cameras running VGA @ 60fps, dual core e6300 CPU @ 2.5ghz:
1. Basic loop, grabbing frames, using CL_COLOR_RAW - CPU usage: 20%
2. Same loop using CL_BAYER_RAW - CPU usage: 3% CPU usage
Conclusion: bayer conversion is wasting CPU cycles. This is a complex operation, but is it required?
AlexP’s post here suggests that bayer mode is used to transfer from the camera to reduce bus usage.
http://codelaboratories.com/forums/viewthread/168/#489
Would it be possible to let the camera perform the bayer conversion instead? Granted, this would limit the combined FPS of all cameras due to the limits of USB2, but it would allow us to do MUCH more computation between frames.
AlexP, would you consider adding an option to do this? It would be extremely useful!
Thanks