Atten: DLI, Potential AI Developer's Kit Images

Dec 23, 2020 - 11:52 PM

  • With great difficulty I have succeeded in getting OpenVINO and the Coral TPU support running on two of the DLI supplied images.

    I have two based on the LTS versions.

    The first is atomicpi_ubuntu_bionic18.04_lxde_standalone_1.0.0.153 modified to automatically login (suitable for rebooting by a watchdog timer) It has OpenVINO 2020.1 and the Coral libedgetpu-legacy and python3-edgetpu packages installed, node-red, mosquitto, everything to run my Security DVR AI Person Detector add-on project:

    It uses about 55% of the eMMC and uses an SD card to store detected images. The major limitation is I could not get sound to work in at all, since part of my project is audio alert messages upon person detection using espeak-ng speech synthesizer, its missing a potentially important piece. It will run using Modidius NCS, NCS2, ot Coral TPU. I tried installing OpenVINO 2020.3, the last version that supports the original NCS but it had errors building the OpenVINO examples so I downgraded to the 2020.1 version that my project was developed with and the demos built and ran correctly. But without audio and Condor camera usable in OpenCV, its probably not worth bothering with.

    The second is atomicpi_ubuntu_focal20.04_lxqt_standalone_1.0.0.206 again modified to automatically login and ready to run my AI person detector project. Unfortunately OpenVINO 2021.1, the first to support Ubuntu 20.04 and python 3.8 doesn't support the original NCS, so its only NCS2 or TPU. Audio works and the built-in Class-D amplifier works well with espeak-ng and external speaker. It uses about 65% of the eMMC.

    Unfortunately OpenVINO 2021.1 also changed the model format so my NCS models don't work, I expect to rebuild them in the new format with the model optimizer soon. The OpenVINO classification_sample_async and security_barrier_camera_demo built and ran correctly with both CPU and NCS2. Two bad the Atom Z8350 GPU doesn't have what it takes to run the OpenVINO GPU plug-in.

    If someone at DLI is interested, contact me and we can make arrangements for me to get the compressed versions of my two images to you. I can rip out my AI code or leave it in, it'll work well with any 8-channel 1080p security DVR or IP netcams that can export rtsp streams viewable in VLC.

    To really meet the AI Developer's Kit requirements you'll have to tell me how to use the Condor camera in OpenCV. A gstreamer pipeline that implements an rtsp server might suffice, but none of the $HOME/samples/camera examples work for me on either of DLI images.

    A garden variety 1080p USB webcam works fine if you want to start with say some PyImageSearch AI tutorials.

  • The model_optimizer segfaults on the Atomic Pi. But I converted my MobilenetSSDv2_coco tensorflow model from the model zoo on my i7 Desktop to the new IR10 format and my AI code runs great with the NCS2 once I modified it to load this instead of the IR5 model I initially converted using an old OpenVINO version.

    My tgz compressed image of my eEMC LXQT 20.04 image is ~4.5GB.
    I'll gladly share it if you have a place to put it up for download.

    I'd love to have a link that I could point people to inorder run my AI system by buying and Atomic Pi, NCS2 or TPU, and downloading the image to write to the eEMC. Writing to the eEMC and booting it is better than installing to an SD card because its really nice to format a 32GB+ SD card to ext4 and put it in the SD card slot to save the AI detection images to.

    OTOH, my AI code could be deleted from the image by loopback mounting it after decompressing, deleting the /home/atomicpi/AIdev Folder and /home/atomicpi/.node-red/flows.json file, unmounting and recompressing.