Camera based project needs a fast camera interface

I dunno if this is the right place for this but I have a long term project that I want to start. It involves computer vision and as such I need to have a bunch of cameras (4-6). I need to be able to capture all the images at the same time transfer them to a central computer (probably a Pi3) and then send them wireless to a full blown computer (my gaming PC).

I was thinking of using a Pi3 to grab the images then use WiFi direct to stream them over to the proper computer (though 'Il probably have to program my own library for that -_-). The problem that I have is that I still need a way to capture the data then sent it to the Pi. For this I was planning on building some custom boards which connect to a camera module (OV3640 or something in that family). Now I don't know what interface would be able to transfer 8MB/s so that I can get roughly 1-2FPS.....

With the new Pi Zero having a camera interface I could use that but I still don't know how to transfer the data. Maybe USB? SPI at the maximum settings gets me around 3MB from what I can find and other than that I've got no idea. Any suggestions??? :)


Not sure i completely understand the scope of this project but i think the Pi will be a bottleneck, My flagship Rby Pi struggles sending files over WIFI and the USB interface is far from speedy... how big are the files likely to be?

well from each camera it would be around 8MB 4-6 times so around 32-48MB

Yeah.. the Pi's interface is limited to about 10mb unfortunately, and thats a best case senario, I think your going to want something more robust for this... Personally I would look for a way to cut out the middle man and have ...

camera > workstation

Rather than

camera > Pi > workstation

Yes that would be better but the whole reason that i need a middleman is because i need it to work without the workstation so that i can still take pictures and then do the processing later.

Hmm, maybe I could compress the images send those to the workstation then once done send the full resolution and begin calculating everything again...

If there was a chip out there which didn't cost a few grand and an NDA with a lot of camera connections i would just use that but as far as i know that isn't a thing. So i'm basically limited to one micro-controller per camera that i want to use.

What about investing a bit more and buy something like a NUC? Would be much more powerful than a Raspberry Pi, have enough bandwith for your needs but use some more current.

1 Like

+1 this, even the most basic NUC used online would be a hell of alot more efficient