Innovation Open Source

How to give your Raspberry Pi 'state-of-the art computer vision' using Intel's Neural Compute Stick

The Intel Movidius Neural Compute Stick promises to boost the rate at which the Pi can carry out vision-related tasks like facial and object recognition.

Think you need a server farm to carry out AI-powered tasks like facial and object recognition? Think again.

The $35 Raspberry Pi has long been capable of running image recognition software, with hobbyists using the board to pick out everything from faces in videos to obstacles in a robot's path.

Now the Intel Movidius Neural Compute Stick (NCS) promises to boost the rate at which the Pi can carry out vision-related tasks like facial and object recognition.

The $79 stick plugs into the Pi via USB, and accelerates vision recognition tasks using the 12 specialized cores in its Myriad 2 Vision Processing Unit (VPU). The low-power processor is capable of 100 gigaflops and consumes a single watt, although the power draw for the stick may occasionally rise to 2.5W.

Movidius has now released a video, see above, and text guide demonstrating how to try out object recognition on the Raspberry Pi 3 and the NCS, showing off the system recognizing sunglasses and a computer mouse as a camera pans around a room. Getting this demo running requires downloading a few software libraries, owning a Pi camera and copying some files from a PC running Ubuntu 16.04.

SEE: Research: 63% say business will benefit from AI

An early version of what would become the NCS was announced by Movidius last April, then a prototype device called the Fathom, but, after Intel bought Movidius in September 2016, it was never fully released.

At the time, Dr Yann LeCun, Facebook's director of AI research and founding father of convolutional neural networks, described the Fathom as a significant step forward.

"As a tinkerer and builder of various robots and flying contraptions, I've been dreaming of getting my hands on something like the Fathom Neural Compute Stick for a long time. With Fathom, every robot, big and small, can now have state-of-the-art vision capabilities," he said. The specs of the two sticks are broadly the same, with the main difference being the NCS has 4GB of memory, four times that of its predecessor, to support denser neural networks.

Intel says the Movidius NCS will help lower the barriers for those who want to get started with deep learning application development and provide a simple way to add visual recognition systems to prototype devices, such as drones, surveillance cameras and robots.

Since all of the data is handled by a locally stored neural network, the NCS doesn't require an internet connection. It seems to be suited to use cases where the latency of communicating with a server would be too great, where privacy is a concern, or where a high-performance processor would be too power hungry.

The NCS doesn't accelerate the computationally intensive process of training a neural network to carry out vision recognition, which will typically still require a more powerful computer than the Pi.

Instead the NCS boosts the speed at which pre-trained networks make inferences about data, for example whether there is a cat in an image. Rough estimates of performance online say the stick's VPU can do 10 inferences per second using a GoogLeNet convolutional neural network, compared to about 2 inferences per second using Google's Inception convolutional neural network architecture on an unaided Raspberry Pi.

Movidius says users can chain multiple sticks together, which will deliver a linear boost to performance for each stick added.

At present, the NCS only supports machine-learning models built using the Caffe framework, although Movidius has hinted that support for neural networks built using Google's TensorFlow library may be on the cards.

Read more about the Raspberry Pi

Visit TechRepublic