Skip to content

A collection of practical, end-to-end AI application examples accelerated by MemryX hardware and software solutions. This repository offers examples for real-time video inference, object detection, text generation, and more. Explore the code, contribute to the projects, and access detailed tutorials to maximize the potential of MemryX technology.

Notifications You must be signed in to change notification settings

memryx/MemryX_eXamples

Repository files navigation

MemryX eXamples

MemryX SDK Python Versions C++ ONNX Keras TensorFlow TensorFlow Lite

MemryX eXamples

Welcome to MemryX eXamples, a collection of end-to-end AI applications and tasks powered by MemryX hardware and software solutions. Whether you're performing real-time video inference, exploring fun AI projects, or generating text, these examples provide practical, hands-on use cases to help you fully leverage MemryX technology. For detailed guides and tutorials, visit the MemryX Developer Hub.

Before You Start

To ensure a smooth experience with MemryX solutions, follow these steps before diving into the examples:

  • Explore the Developer Hub: Your gateway to comprehensive documentation for MemryX hardware and software.
  • Install the MemryX SDK: Set up the essential tools and drivers to begin using MemryX accelerators.
  • Check out our Tutorials: Step-by-step instructions for various use cases and end-to-end applications.
  • Explore the Model Explorer: A great starting point for discovering models compiled and tested on MemryX accelerators.

Get Started

Step 1: Prepare Your System and Install the MemryX SDK

Before working with the examples, ensure your system is correctly set up by installing the MemryX SDK. Follow the detailed instructions here: MemryX SDK Get Started Guide.

Step 2: Clone the MemryX eXamples Repository

Clone this repository plus any linked submodules with:

git clone --recursive https://github.com/memryx/memryx_examples.git

Example Categories

Note: Applications marked with πŸ“ have tutorials available. Clicking on the icon will take you directly to the tutorial page.

Real-Time Video Inference πŸŽ₯

Leverage MemryX accelerators for real-time video processing tasks. These applications demonstrate how to run models efficiently on live video streams.

Application Description Models Code OS Preview
Depth Estimation using MiDaS πŸ“ Estimate depth from a video stream MiDaS python-badge cpp-badge Linux Windows Depth Preview
Object Detection using YOLOv7Tiny πŸ“ Detect objects in real time YOLOv7 (Tiny) python-badge Linux Yolov7 Tiny Object Detection Preview
Object Detection using CenterNet πŸ“ Detect objects in real time CenterNet cpp-badge Linux CenterNet Preview
Object Detection using YoloX Detect objects in real time YoloX (Medium) python-badge Linux YoloX Object Detection Preview
Vehicle Detection Detect vehicle in real time Vehicle-Detection-0200 python-badge Linux vehicle Detection Preview
Segmentation using YOLOv8 Perform instant segmentation on video in real time YOLOv8 Nano Segmentation python-badge Linux Yolov8n Segmentation Preview
Pose Estimation using YOLOv8 πŸ“ Estimate human pose from video YOLOv8 (Medium) python-badge cpp-badge Linux Windows Yolov8 Pose Estimation Preview
Interactive Realtime Multi-Face Recognition Interactive app for face recognition Multiple Models python-badge Linux Face Recognition App
3D Point Cloud from Depth Estimation Generate real-time point clouds from depth data MiDaS python-badge Linux Windows Point-cloud Preview
Automatic License Plate Recognition Recognize license plate in real time Multiple Models cpp-badge Linux ALPR Preview
Wireframe detection Using M-LSD and QT Perform Line segment detection in real time M-LSD (Large) python-badge Linux Wireframe Preview
Face Detection & Emotion Classification πŸ“ Detect faces and classify emotions Multiple Models python-badge cpp-badge Linux Face Detection & Emotion Classification Preview
Person Tracking using YOLOv7 Track unique people across video frames YOLOv7 (Tiny) python-badge Linux Person Tracking Preview
Intrusion Detection Detect any intruding object in a ROI Yolov8 and ByteTrack python-badge Linux Intrusion Preview
Face Landmarks Detection Detect presence of a face and it's landmarks BlazeFace and FaceMesh python-badge Linux Landmarks Preview

Image Inference πŸ–ΌοΈ

Explore models performing inference on static images and data. These examples demonstrate how to leverage the MXA to process large amounts of data.

Application Description Models Code OS Preview
Satellite Object Detection with Oriented Boxes Detect oriented bounding boxes on satellite images YoloV8m-OBB python-badge Linux OBB Preview
Face Detection + Recognition Perform face detection + recognition YoloV8n-Face + FaceNet python-badge Linux Face Preview

Multi-Stream Video Inference πŸ–₯️

Maximize performance by running multiple video streams concurrently on MemryX accelerators.

Application Description Models Code OS Preview
Multi-Stream Object Detection using YOLOv8S πŸ“ Detect objects across multiple streams YOLOv8 (Small) python-badge cpp-badge Linux Yolov8 Object Detection Preview
Multi-Stream Object Detection using YOLOv7Tiny πŸ“ Detect objects across multiple streams YOLOv7 (Tiny) python-badge cpp-badge Linux Windows Yolov7-Tiny Object Detection Preview

Fun Projects πŸ€–

Explore interactive and engaging AI-powered applications in our fun projects section.

Application Description Models Code OS Preview
Chrome Dino Game πŸ“ Control the Chrome Dino Game using palm detection Palm Detection python-badge Linux Dino Game Preview
Tiny Stories πŸ“ Generate children's stories using a small language model TinyStories python-badge Linux Tiny Stories Preview
Deep Reinforcement Learning with Mario Play Mario with a Reinforcement Learning Agent Custom python-badge Linux Mario Game Preview
Aimbot Automatic aim and click for Windows games YOLOv7 (Tiny) python-badge Windows AimBot Preview
Repcounting Web-application Workout repcounting web-application YOLOv8 Pose (medium) python-badge Windows MxFit Preview
Facial Cartoonizer Instantly cartoonize videos in real time Facial-Cartoonizer python-badge Linux Windows Dino Game Preview
Virtual Painter Virtually Paint using Hand Landmarks in real-time Palm Detection & Hand Landmark python-badge Windows Virtual Painter Preview

Accuracy Calculation βœ…

Measure and evaluate the accuracy of various models using MemryX hardware.

Task Description Models Code OS
Classification Accuracy πŸ“ Calculate accuracy for classification models ResNet50 python-badge Linux
Object Detection Accuracy πŸ“ Calculate accuracy for object detection models YOLOv8 (Medium) python-badge Linux
Keras Classifiers Accuracy πŸ“ Calculate Keras classifiers accuracy on the MXA Keras applications python-badge Linux

Audio Inference πŸ”Š

Explore how the MemryX accelerators can be used for audio/speech processing tasks. The examples below demonstrate how to run models using MemryX hardware.

Task Description Models Code OS
Audio Denoising using UNet Remove noise from speech audio using UNet UNet python-badge Linux
Audio Classification using YAMNet Identify audio categories using YAMNet YAMNet python-badge Linux
Audio Classification Web App Classify audio using YAMNet in a web app YAMNet python-badge Linux
Speech Emotion Recognition Web App Detect emotion from speech (web app) Light-SERNet python-badge Linux

Useful Links

  • Developer Hub β€” Comprehensive documentation for MemryX hardware and software.
  • DevHub Get Started β€” Guide to set up MemryX software and hardware.
  • Tutorials β€” Step-by-step instructions for various use cases and applications.
  • FAQ β€” Frequently asked questions.
  • Troubleshooting Guide β€” Solutions to common issues.

Contribution Guidelines

We welcome contributions! If you'd like to contribute to this repository or examples, please refer to our contribution guidelines. Feel free to submit pull requests, suggest improvements, or ask questions in the issues section.

Frequently Asked Questions (FAQ)

1. How do I install the MemryX SDK?

Refer to the SDK Installation Guide for a detailed step-by-step guide on setting up the MemryX SDK.

2. What do I do if an example isn't working?

Make sure you’ve followed all setup steps. You can also check the Troubleshooting Guide for more help, or open an issue in the repository.

3. Can I contribute to this repository?

Yes! We welcome contributions. Please refer to our contribution guidelines for more information on how to contribute.

Happy coding! 😊
The MemryX Team

About

A collection of practical, end-to-end AI application examples accelerated by MemryX hardware and software solutions. This repository offers examples for real-time video inference, object detection, text generation, and more. Explore the code, contribute to the projects, and access detailed tutorials to maximize the potential of MemryX technology.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published