The future is a scary place, full of robots, drones, and smart appliances with cameras and vision systems that will follow your dog, your child, or your face around, dutifully logging everything they see, reporting back to servers, and compiling huge datasets that can be sold to marketing companies. We’re not too keen on this view of the future, but the tech behind it – cheap cameras in everything – is very cool. [Ibrahim] is doing his part to bring about the age of cheap cameras that are easy to interface with his entry to The Hackaday Prize, the OpenMV.
The idea of a digital camera that is easy to interface with microcontrollers and single board computers isn’t new. There are serial JPEG cameras and the CMUcam5 Pixy, but they cost somewhere around $70. It’s not something you would design a product around. [Ibrahim]’s OpenMV costs about $15, and offers some interesting features like on-board image processing, a huge amount of RAM, and even a wireless expansion thanks to TI’s CC3000 WiFi module.
Currently, the OpenMV is capable of doing face detection at 25fps, color detection at better than 30fps, all thanks to the STM32F4 ARM micro running at 180MHz. There’s support for up to 64MB of RAM on board, with IO available through serial, SPI, I2C, USB 2.0, and WiFi.
It’s an interesting project on its own, but the really cool thing about this build is the price: if [Ibrahim] can actually produce these things for $15 a pop, he has an actual product on his hands, one that could easily be stuffed inside a drone or refrigerator for whatever cool – or nefarious – purposes you can imagine.
The project featured in this post is an entry in The Hackaday Prize. Build something awesome and win a trip to space or hundreds of other prizes.
Oh my god. I love it. 15 bucks each makes it really affordable for a student like me.
Hit me, get it straight into my veins!
The camera is neat but I wouldn’t expect to buy it for $15. Mouser shows the STM32F429 at $10.62 for 1000 pieces. Camera for $4 maybe. Not sure how much for RAM. Then add remaining parts, PCB, assembly and testing, and then his profit. Most small board makers I know mark the parts cost up at least 3X for the list price to cover manufacturing, support, warranty repair, distribution and profit. Makes it a little easier to understand why the other cameras cost what they do.
Got here for the same question. But it’s awesome to have a project like this that combines so many different drivers/devices. The software stack alone should provide a lot of material.
Does it run an RTOS or is it bare metal or CMSIS or …?
There’s a much better price quote on the project page. The author says the first version had a cost of $15-$20. Considering the first version had no wifi and he was only quoting the cost of the project itself (not a selling price) that’s probably a pretty close estimate.
Basically, it sounds to me like he’s saying if you wanted to make a bunch of these yourself, it would cost you $15-$20/each in parts.
Even without WiFi, I have pricing for most of his BoM in 500K/y and 1M/y quantities and I don’t think it would be possible to hit even $20. And he has the camera direct mounted on the MV2 – it’s a 0.5mm BGA if you haven’t noticed. I’m not sure many people will be reflowing that at home. MV2 is more expensive to manufacture than the cameras he’s trying to replace.
Hey guys, DarwinSurvivor is spot on, there are two versions the first one is really close to $15 (think about it, STM32F407 $6 in 1000’s on digikey, ~$2 sensor, connectors and a few passives that’s it) and it does have WiFi, but it’s an expansion shield, not something built-in of course.
The second one will definitely cost more, how much I’m not sure yet, but with the addition of RAM and faster micro, it will do more, still pretty small (1.7”x2.0) and will cost less than other alternatives.
CToS here we come! X3 … but seriously i want like 5 X3
That’s what people should be affraid of beside of GoogleGlass… not comment about this yet? How supprizing…
Take my money!
My too!
I find it strange that it can do something as complex as facial detection at 25fps, but simple colour detection at 30fps. Any ideas why this might be?
That is probably a limit of the camera sensor rather than the MCU.
OV9650
SXGA : 15fps
VGA : 30fps
QVGA, QQVGA, CIF : 60fps
QCIF, QQCIF : 120fps
Drop the resolution you can probably get the detection rate up.
Ah, that makes sense.
Awesome project.
As for the cameras everywhere future; fine by me, as long as they also are logging the politicians, lobbyists and CEOs everywhere. Cameras for (and at) everyone! Fairs fair.
Hi, as another alternative idea, the entire camera protocol and full source code is documented here for the BeagleBone Black: http://www.element14.com/community/community/knode/single-board_computers/next-gen_beaglebone/blog/2013/08/18/bbb–imaging-with-a-pru-connected-camera
Cost would be less than $15 and for many projects you’d need a Linux platform anyway, for network connectivity (eth or wifi USB stick) or for saving video or images it would be more convenient with a Linux platform. Plus you can then use full-blown OpenCV for more advanced capabilities. But I can see some people may want the OpenMV without BBB, for lower cost.
I already can see the glassholes group sweating.
How does it do the face recognition? Viola-Jones seems difficult to me at 25fps on the STM32F4. Is it YUV threshold+blob size calculation?
YES! This is exactly what we need!
Only suggestion would be to have a more robust SD card holder- This is the sort of thing I want to mount to a drone.
Nice thing but i miss the wifi module und where you wanna place the additional RAM chip?
Gimme a dozen!
btw. the 64MB RAM expansion with 407 will not work. only 427 and up are with this interface!