<< return to Pixycam.com

OpenCV Libraries

What are the hurdles preventing CMUCam X from carrying the OpenCV library?

  • Entire OpenCV download with example apps and all seems to come in <200MB after decompression.

  • Even a few GB of flash storage on the CMUCam shouldn’t be an issue, especially if it included a MiniSD slot.

Hi Nathan,

Pixy has 1Mb of flash and 264Kb of RAM, but there isn’t an SD slot, so storing the library on-board isn’t a possibility. Although there is a mini-USB port, which you could hook up to external memory and possibly use for something like this, but there would be a lot of overhead involved to get that to work.

The biggest problem is that Pixy does not (yet) run on an embedded OS, which OpenCV would need to work. If we (or someone else from within the community) were to port an OS to work on Pixy, then using OpenCV would be a much better possibility.

Scott

More information about runnning an OS on the pixy’s processor. For linux, a good intro:

For Linux, the primary challenge, as Scott described, is loading the linux kernel; although the bootloader fits in the nvram on the main processing chip, it needs to load the kernel from other storage. USB memory stick seems like the most likely option, on first review. Scott, @48% down that document it talks about BOM costs, describing options for loading the kernel. Can you speak to how standard Pixy is with regard to its USB interface?

That first article refers to emcraft’s micro-controller linux, which has this document provided by emcraft:

http://www.emcraft.com/uCLinux/images/jdownloads/linux-LPC4350-EVAL-bspg-1.6.0.pdf

Their github repos:

https://github.com/EmcraftSystems

Here’s another link that might be worth a look;

http://www.freertos.org/FreeRTOS-for-LPC4350-Cortex-M4F-and-Cortex-M0-Keil.html

Hi Randy,

Pixy uses “libusb”:http://www.libusb.org/ to handle USB communication. libusb is fairly popular, so I would hope it strictly conforms to the USB interface. I can’t speak in detail as I haven’t gone too deep in to the library.

Thanks for the resources, btw, they look like great places to start.

Scott