Embedded deep neural networks


Vertigo provides custom-trained deep neural networks (DNNs) suitable for embedded use. Many contemporary DNNS are massive over-parameterized, and only run on server class GPU or FPGA hardware. Our networks and proprietary deep neural network engine are designed for IoT and mobile use, and run on commodity CPUs, utilizing existing processor SIMD-capabilites to achieve high-resolution neural network inference at near-realtime framerates, even for challenging tasks such as object detection and localization, and keypoint and face feature extraction.

Below is an example of our embeddable head- and face detection and recognition technology. The heads and faces in the video are matched agains a database of Footballer’s faces, and annotations are added in real-time. The face recognition runs in an open-set context, which means that the database can be changed without having to re-train the underlying neural network, and that very large databases can be supported.

Our technology ships as a single binary executable or Python module, currently around 3 megabytes in size. It runs with no external dependencies, making it very easy to embed and maintain. With the precision shown in the video, it runs at over 5FPS on a a modern Raspberry PI, OrangePi, NanoPI, or similar device, for typical surveillance video stream in HD resolution (1280x720 RGB). On an Intel i5 or similar CPU, greater than 25FPS should be expected.

We are licensing this technology for both off-line and on-line use, please contact us for details. We are also able to provide custom object detectors or recognizers, e.g., pedestrian detection, gender and age determitation, etc., upon request.