feature article
Subscribe Now

Enabling Creepy… and Cool

Movidius Camera Processor Helps Drones As Well As Doctors

Video surveillance, CCTV, camera-toting drones, cellphone video, stoplight cameras – they’re everywhere! It seems as though no public space isn’t being recorded, filed, uploaded, and possibly analyzed for malfeasance. The common factor in all these scenarios is digital cameras.

And what do all digital cameras need? Lots of storage, lots of bandwidth, and lots of processing power. Grabbing frame after frame of unrefined, uncompressed video isn’t interesting. You need to massage the video before it’s useful. That means some combination of white balance, edge detection, smoothing, compressing, artefact reduction, and possibly image recognition. That’s a lot of work on a lot of pixels, in very little time.

It’s precisely that workload that has kept a portion of the microprocessor industry in business. Crunching hours of video in minutes of real time is not the work of a lightweight processor. In fact, it’s one of the toughest tasks you can toss at a standard RISC or CISC CPU. Just try running your security cameras on an old PC and see how quickly it bogs down. Spreadsheets and word processors are one thing; spotting intruders at 2:00 AM is quite another.

This sounds like a business opportunity! And indeed, it is. There are any number of ways to handle video processing, from DSPs and FPGAs to specialized processors. And a leading light in the latter category is Movidius. 

We first saw Movidius in these pages about four years ago (“The Moving Picture Show”) when the company introduced Myriad 1, its first take at a custom video-processing processor. Since that time, the company has grown up a whole lot and is now ready to unleash Myriad 2, a vastly improved version.

Movidius calls its Myriad 2 chip a “computational imaging and visual awareness” processor, a multipart description that just rolls off the tongue, doesn’t it? If we parse the phraseology, we can glean the “computational” part because it’s a processor. That means you program it, rather than just wiring it up to your CMOS image sensors. It’s a multi-core chip, with several SHAVE processor cores working in collaboration to crack difficult video-processing tasks. (And before you ask, SHAVE stands for “streaming hybrid architecture vector engine” because it is – ahem – on the bleeding edge of video processing. Aren’t you glad you didn’t ask?)

The “visual awareness” part is where the usage case gets a little weird. Myriad 2 is so good at digesting real-time video that it can capture a full 360 degrees all at once and make sense of it. That allows you to do interesting things like create a sort of wraparound GoPro that sees in all directions simultaneously. In fact, one company has done just that, with the video evidence here.

But what if your needs extend beyond posting extreme sports videos? Myriad’s real-time image processing allows you to do somewhat more practical things, like scan a room’s interior dimensions simply by waving a camera around. Shooting video of a room is trivially simple – any smartphone can do that – but making sense of that video is another matter, and that’s where Myriad 2 comes in. By preprocessing the video, the Movidius chip can detect parallax and, thus, distance. Wave the camera around enough to get a good view of everything from all angles, and Myriad 2 can help you put together a pretty accurate 3D model of the entire visible space. Here again, one company is showing how Myriad could do just that

Finally, there are the non-video applications for video. Capturing images doesn’t always have to lead to another YouTube upload. Instead, Myriad 2 can be part of a cool, gee-whiz user interface based on gestures and virtual objects. Want to go for the full Minority Report experience, waving your hands in front of a computer screen? You’re going to need some video-capture hardware for that (or special sensor-laden gloves), and that’s where Myriad 2 shines. The example here shows how medical professionals might interact with virtual organs without getting their hands dirty.

Science-fiction author Arthur C. Clarke famously said, “any sufficiently advanced technology is indistinguishable from magic,” and I can’t help thinking that future doctors may soon be waving their hands in the air over their patients to effect surgery. If that doesn’t conjure up images of voodoo and magic, I don’t know what will.

Movidius is a little shy about the technical details of Myriad 2, apart from confirming that it sports an even dozen of its 128-bit SHAVE CPU cores, two additional 32-bit RISC processors, and a complex shared-memory fabric. Indeed, they seem more proud of their memory controller than of the processors; it’s the key to keeping Myriad 2’s power consumption down.

Any video processing involves a lot of pixels and therefore a lot a bitwise comparisons. Keeping the data movement to a minimum is the trick. Typical microprocessors and DSPs move data into and out of on-chip registers to do their comparison or arithmetic work, and those to-and-fro transactions burn up time as well as energy. Movidius focused its attention on minimizing motion (ironically enough), so the SHAVE processor cores in Myriad 2 use a unique (and mostly secret) method of sharing data without a lot of gratuitous back and forth.

As a result, the company says Myriad 2 delivers a 20-fold improvement in “processing efficiency” over its predecessor. Okay… but what exactly is processing efficiency and how do you measure it? Are we talking MIPS/watt, operations/second, furlongs/fortnight, or what? The metrics can be a bit vague, but the company explained that the 20x improvement was in “energy consumed per function,” and was therefore a ratio of work performed over energy consumed. “Think joules, not watts,” they suggested.

That’s fair. Most Myriad 2 applications will be in mobile devices (isn’t everything?), and that means battery power. Which means efficiency is almost as important as all-out performance. Yes, real-time video processing is hard, but if it eats up all my battery before I complete that awesome flying-squirrel-suit jump off of El Capitan, what good is it?

Programming Myriad 2 won’t be easy. Coding multicore processors never is, but Movidius gives you a head start with a bunch of prewritten routines along with its vectorizing compiler.

So whether you’re into surgery or selfies, surveillance or speeding tickets, Myriad 2 will likely play a part in it. Smile for the ubiquitous cameras. 

10 thoughts on “Enabling Creepy… and Cool”

  1. Pingback: D/s
  2. Pingback: DMPK
  3. Pingback: online hash kopen
  4. Pingback: slot machines
  5. Pingback: roof repair
  6. Pingback: ADME Services

Leave a Reply

featured blogs
Aug 14, 2018
I worked at HP in Ft. Collins, Colorado back in the 1970s. It was a heady experience. We were designing and building early, pre-PC desktop computers and we owned the market back then. The division I worked for eventually migrated to 32-bit workstations, chased from the deskto...
Aug 14, 2018
'€œPrediction is difficult, especially the future.'€ '€” Niels Bohr Okay, in my post last week , I revealed that I was a deterministic Newtonian, and my reasoning was about two hundred years old. I posited, '€œIf I could identify all the forces and weights and measur...
Aug 14, 2018
Introducing the culmination of months of handwork and collaboration. The Hitchhikers Guide to PCB Design is a play off the original Douglas Adams novel and contains over 100 pages of contains......
Aug 9, 2018
In July we rolled out several new content updates to the website, as well as a brand new streamlined checkout experience. We also made some updates to the recently released FSE locator tool to make it far easier to find your local Samtec FSE. Here are the major web updates fo...
Jul 30, 2018
As discussed in part 1 of this blog post, each instance of an Achronix Speedcore eFPGA in your ASIC or SoC design must be configured after the system powers up because Speedcore eFPGAs employ nonvolatile SRAM technology to store its configuration bits. The time required to pr...