Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.
6404 Discussions

The worlds first AI edge ncs2 cameras - OpenVINO - Raspberry Pi - Up board

Peniak__Martin
Beginner
1,258 Views

Hi guys,

UPDATE (18/01/19): Video demonstration: https://vimeo.com/311111323

I thought I’d share my latest innovations with you. 

Two AI edge camera prototypes, one using RPi and it’s more compact:

https://www.timeless.ninja/blog/the-world-s-first-ai-edge-camera-powered-by-two-intel-myriad-x-vpus

and the other one based on Up board, larger but more powerful:

https://www.timeless.ninja/blog/the-world-s-first-ai-edge-camera-powered-by-up-squared-and-three-intel-myriad-x-vpus

Let me know if you have any questions. I’ll be also at the Intel devcon in Munich this January so if you’re around let me know.

 

Regards,

Martin Peniak, PhD

Head of Innovation | Cortexica 

 

0 Kudos
14 Replies
Kang__June
Beginner
1,258 Views

Awesome immediate application. 

Is there linear (or almost linear) computational advantage of parallelizing NCS2?

0 Kudos
Peniak__Martin
Beginner
1,258 Views

Kang, June wrote:

Is there linear (or almost linear) computational advantage of parallelizing NCS2?

 

Thanks for your comment, I do appreciate it! Yes there is a near linear scaling based on my observation.

 

0 Kudos
RTasa
New Contributor I
1,258 Views

I have SO many questions based on your parts list. The Up2 has CPU choices which one do you have? You mentioned using the UP AI Core X Deep Neural Networks Hardware accelerator. Did you? Was that in the box? What graphs have you tested? Are they all FP 16? Are you only using the 2 NCS2 sticks for this application? What is the video input size? Are you evaluating HD, SD or 1/2 SD video frames in your graphs you are using?   Have you run Yolo on it? Does the Myriad X give you more power than 2 NCS2 sticks? Which version of the AI Core X did you use. 

Thanks

0 Kudos
Peniak__Martin
Beginner
1,258 Views

Bob T. wrote:

I have SO many questions based on your parts list. The Up2 has CPU choices which one do you have? You mentioned using the UP AI Core X Deep Neural Networks Hardware accelerator. Did you? Was that in the box? What graphs have you tested? Are they all FP 16? Are you only using the 2 NCS2 sticks for this application? What is the video input size? Are you evaluating HD, SD or 1/2 SD video frames in your graphs you are using?   Have you run Yolo on it? Does the Myriad X give you more power than 2 NCS2 sticks? Which version of the AI Core X did you use. 

Thanks

The Up board one was based on this same hardware as in here: https://up-shop.org/home/251-up-squared-ai-edge-ppe-monitoring-powered-by-cortexica.html

I've tested mobilenet-ssd on this particular setup; VPUs and GPUs need FP16 so that's what I used. CPU needs FP32 so one model is FP32. 

For the UP based AI Edge camera I use 2 NCS and one Myriad X on mini-PCIe...I believe this is covered in the blog.

The input size of mobilenet-ssd is 300x300 in this case. I have another model of 600x600 but was not any better. 

Cheers

 

0 Kudos
RTasa
New Contributor I
1,258 Views
That should give you about 12 TOPS of processing power, assuming each Movidius device delivers its max of 4TOPS. I love the casing.
0 Kudos
Boaz__Jabulon
Beginner
1,258 Views

do u know what is the comand to run the Inference using the Raspberry pi camera?
-i /dev/video0 or -i /dev/video1 or - i cam and manu other comands don't work with the Pi Camera. -i /dev/video0 or -i /dev/video1 only work with USB web cameras

0 Kudos
Boaz__Jabulon
Beginner
1,258 Views

Boaz, Jabulon

 

Tue, 01/08/2019 - 10:42

What is the comand to run the Inference using the Raspberry pi camera?
-i /dev/video0 or -i /dev/video1 or - i cam and manu other comands don't work with the Pi Camera. -i /dev/video0 or -i /dev/video1 only work with USB web cameras.

E. g. That works with the USB web cam on the pi but does not work with the Raspberry pi camera:
./armv7l/Release/object_detection_demo_ssd_async -i /dev/video0 -m frozen_inference_graph.xml -d MYRIAD

0 Kudos
hamze60
New Contributor I
1,258 Views

Hello,

Can you tell about performance, how many FPS? I saw some other discussion on internet by @PINTO that NCS2's performance is poor, and, for now, the reported benchmarks by Movidius official page is a big question  for me.

0 Kudos
Peniak__Martin
Beginner
1,258 Views

ahangari, hamzeh wrote:

Hello,

Can you tell about performance, how many FPS? I saw some other discussion on internet by @PINTO that NCS2's performance is poor, and, for now, the reported benchmarks by Movidius official page is a big question  for me.

 

Depending on the model but mobilenet-ssd was like 10-12FPS on some models and on the super light face detection model from the intel repo is was nearly 20FPS...That being said, I have developed this (https://up-shop.org/home/251-up-squared-ai-edge-ppe-monitoring-powered-by-cortexica.html), which has MyriadX (just like NCS2) and the same model runs at 40FPS so yeah I am not impressed either but I could not say I am disappointed either :)

Here you see both cameras in action: https://vimeo.com/311111323

 

0 Kudos
Peniak__Martin
Beginner
1,258 Views

Hi guys,

I thought I would let you know that I've also made a quick video demonstration of both cameras.
Check this out if you are interested: https://vimeo.com/311111323

Regards,
Martin Peniak, PhD

Head of Innovation | Cortexica

0 Kudos
Reinberger__Thomas
1,258 Views

Hi Martin,

which model did you use to perform the body parts detection as shown in your latest video? Maybe we can catch up during the Intel AI Devcon tomorrow.

Cheers
Thomas

0 Kudos
Kulecz__Walter
New Contributor I
1,258 Views

Boaz, Jabulon wrote:

Boaz, Jabulon

 

Tue, 01/08/2019 - 10:42

What is the comand to run the Inference using the Raspberry pi camera?
-i /dev/video0 or -i /dev/video1 or - i cam and manu other comands don't work with the Pi Camera. -i /dev/video0 or -i /dev/video1 only work with USB web cameras.

E. g. That works with the USB web cam on the pi but does not work with the Raspberry pi camera:
./armv7l/Release/object_detection_demo_ssd_async -i /dev/video0 -m frozen_inference_graph.xml -d MYRIAD

There is a kernel module to provide a video for Linux driver for the Pi so it can be accessed as /dev/videoN

// edit

sudo nano /etc/modules
// add:
bcm2835-v4l2

If I remember correctly the module was part of the stock Raspbian Stretch image.

 

 

0 Kudos
Norman__Michael
Beginner
1,258 Views

I've had working prototype using the pi camera using an NCS1 since last year - and based on experience I strongly recommend going with a MIPI CSI2 source over USB for the pi, if you can find one that fits your needs. 

The PI's USB limitations mean your NCS sticks and the camera will have to share bandwidth, along with the network, and storage (if you're driving an SSD and booting off the USB).  

If you're interested in performance,and have the budget, consider an up squared, add wifi via the m.2, and get a Myriad X mPCIe module.

0 Kudos
Peniak__Martin
Beginner
1,258 Views

Norman, Michael wrote:

I've had working prototype using the pi camera using an NCS1 since last year - and based on experience I strongly recommend going with a MIPI CSI2 source over USB for the pi, if you can find one that fits your needs. 

The PI's USB limitations mean your NCS sticks and the camera will have to share bandwidth, along with the network, and storage (if you're driving an SSD and booting off the USB).  

If you're interested in performance,and have the budget, consider an up squared, add wifi via the m.2, and get a Myriad X mPCIe module.

Thanks! This is based on two NCS2, PoE enabled and works nice and smooth...no probs with the performance!

I did do the up square version which has its use cases too but it’s much larger and considering the CortexiCAM based on Pi3B+ is really fast I prefer this one. Anyway here is the second design for the reference: 

https://www.martinpeniak.com/blog/the-world-s-first-ai-edge-camera-powered-by-up-squared-and-three-intel-myriad-x-vpus

 

 

0 Kudos
Reply